如何在一个地方声明angular ui引导程序日期选择器设置
How can angular ui-bootstrap datepicker settings be declared in one place?
我使用的是angular ui日期选择器,目前在控制器中声明了设置,例如:
$scope.date = new Date();
$scope.open = function($event) {
$event.preventDefault();
$event.stopPropagation();
$scope.opened = true;
};
为了DRY,我想在一个地方声明它,这样日期选择器就可以在任何地方使用,而不必每次都声明设置。
我试过把它们放进一个工厂,然后注入控制器,但没有成功。我对建造工厂/服务业很陌生。
我发现了这个SO问题,其中提到在config方法下声明设置,如下所示:
.config(['datepickerConfig', function(datepickerConfig) {
datepickerConfig.showWeeks = false;
}]);
但出于某种原因,这对我不起作用。
如何一次性声明日期选择器设置以全局使用或用于注入?
为了在"一个地方"声明日期选择器以便于重用,我为data/config:建立了一个工厂
.factory('datepickerService', function() {
var factory = {};
factory.date = new Date();
factory.open = function($event) {
$event.preventDefault();
$event.stopPropagation();
this.opened = true;
};
return factory;
});
然后是一个日期选择器控制器,它注入datepickerService
,将$scope
与工厂配置挂钩。
.controller('datepickerCtrl', function ($scope, datepickerService) {
$scope.date = datepickerService.date;
$scope.open = datepickerService.open;
});
A指令:
.directive('supermanDatepicker', function () {
return {
templateUrl:'views/partials/datepicker.html'
};
});
带有标准ui boostrap日期选择器的HTML部分模板(但声明控制器)
<div class="input-group" ng-controller="datepickerCtrl">
<input type="text"
class="form-control"
datepicker-popup="{{format}}"
ng-model="shortDate"
placeholder="dd-mm-yyyy"
is-open="opened"
min-date="minDate"
datepicker-options="dateOptions"
date-disabled="disabled(date, mode)"
ng-required="true"
close-text="Close" />
<span class="input-group-btn">
<button type="button"
class="btn"
ng-click="open($event)">
<i class="glyphicon glyphicon-calendar"></i>
</button>
</span>
</div>
最后,它可以插入任何视图:
<div superman-datepicker></div>
相关文章:
- 如何使用skip参数使用angular ui引导进行服务器端分页
- 混合 ui-sref 和 $state.go 在 Angular ui-router 中进行状态转换
- 如何在Angular UI网格中选择下一行
- 使用按钮的Angular UI网格过滤器
- Angular UI启动日期选择器问题
- 包括angular 1.3.0项目上的angular bootstrap ui
- 在Angular ui路由器中,如何将事件从一个视图发送到另一个视图
- 带有嵌套状态的Angular ui路由器和后退按钮
- OnsenUI、Angular和在警报对话框后刷新UI组件
- Angular UI-GRID未在页面上显示网格
- 初始化ng模型时,Angular ui选择占位符不起作用
- Ionic + Angular ui-sref not generating href
- 在日期更改后更新Angular UI引导程序日期选择器选项
- Angular ui路由器中的绝对名称
- Angular+bootstrap ui,检查当前选项卡是否已处于活动状态
- 如何在angular bootstrap ui中聚焦活动导航选项卡中的拳头输入字段
- Angular JS/UI Router:为给定状态禁用指令
- 在模态(bootstrap ui angular)中编辑现有联系人
- 使用帐户登录ui angular dons't刷新$account.currentUser
- 使用ONSEN UI + Angular上传个人资料照片