Javascript AngularJS指令包装时间选择器
我试图用AngularJS指令来包装 我想不出初始化Javascript AngularJS指令包装时间选择器,javascript,jquery,angularjs,angularjs-directive,Javascript,Jquery,Angularjs,Angularjs Directive,我试图用AngularJS指令来包装 我想不出初始化选项的方法。从ngModel中当前保存的值启动时间选项 如果我使用watcher,则为时已晚,因为时间选择器已初始化;如果我使用ctrl.$modelValue,则在呈现指令时将该值设置为null太早 我唯一的另一个选择(据我所知)是观察者,但我不想在每次ngModel的值更改时初始化时间选择器,因为我们最终会陷入混乱,ngModel的值可能不会更改,直到用户希望选择新的时间 下面显示的是我目前拥有的指令代码 (函数(){ “严格使用”; 角
选项的方法。从ngModel
中当前保存的值启动时间选项
如果我使用watcher,则为时已晚,因为时间选择器已初始化;如果我使用ctrl.$modelValue
,则在呈现指令时将该值设置为null太早
我唯一的另一个选择(据我所知)是观察者,但我不想在每次ngModel
的值更改时初始化时间选择器,因为我们最终会陷入混乱,ngModel
的值可能不会更改,直到用户希望选择新的时间
下面显示的是我目前拥有的指令代码
(函数(){
“严格使用”;
角度模块(“时间选择器”,[])
.directive('timepicker',[“$parse”,函数($parse){
返回{
限制:“A”,
要求:'ngModel',
模板:“”,
链接:函数(范围、元素、属性、ctrl){
var ngModel=$parse(attrs.ngModel);
变量选项={
更改时:功能(时间){
范围.$apply(功能(范围){
ngModel.assign(范围、时刻(time.value,“hh:mma”);
});
}
}
ctrl.$formatters.push(函数(值){
如果(!angular.isDefined(value)){return null;}
返回值。格式(“hh:mm A”);
});
ctrl.$parsers.push(函数(值){
返回力矩(值,“hh:mm A”);
});
$(元素).timepicki(选项);
}
};
}]);
}());代码>
也许,像这样的事情”你能解决这个问题吗?我试着像以前一样用角度指令包装timepicki,但什么也没发生