指令中未定义templatedUrl中ng模型中更改的值 最初,当我加载它时,它工作正常,但当我更改ng model scope的模板URl中的值时,该值在我的链接中未定义。我正在为datepicker引导angularjs制定指令。 指令(“日期选择器”
指令中未定义templatedUrl中ng模型中更改的值 最初,当我加载它时,它工作正常,但当我更改ng model scope的模板URl中的值时,该值在我的链接中未定义。我正在为datepicker引导angularjs制定指令。 指令(“日期选择器”,函数(){ 返回{ 限制:“E”, 是的, 要求:“ngModel”, 范围:{ ngModel:“=”, 日期选项:“=”, 已打开:“=” }, 链接:函数($scope、element、attrs、datepickerModel){ $scope.open=函数(事件){ event.preventDefault(); event.stopPropagation(); $scope.opened=true; }; $scope.myModel=新日期(); datepickerModel.$setViewValue($scope.myModel); $scope.$watch('myModel',function()){ log(“值已更改”+$scope.myModel); datepickerModel.$setViewValue($scope.myModel); log($scope.myModel); }) 模板:“” } })指令中未定义templatedUrl中ng模型中更改的值 最初,当我加载它时,它工作正常,但当我更改ng model scope的模板URl中的值时,该值在我的链接中未定义。我正在为datepicker引导angularjs制定指令。 指令(“日期选择器”,angularjs,angularjs-scope,directive,angular-ngmodel,Angularjs,Angularjs Scope,Directive,Angular Ngmodel,指令中未定义templatedUrl中ng模型中更改的值 最初,当我加载它时,它工作正常,但当我更改ng model scope的模板URl中的值时,该值在我的链接中未定义。我正在为datepicker引导angularjs制定指令。 指令(“日期选择器”,函数(){ 返回{ 限制:“E”, 是的, 要求:“ngModel”, 范围:{ ngModel:“=”, 日期选项:“=”, 已打开:“=” }, 链接:函数($scope、element、attrs、datepickerModel){ $
--这是我的指令,希望将myModel与模板myModel绑定。您应该使用“template”而不是“templateUrl”。使用templateUrl将使您从定义的url加载模板,在这种情况下,这是错误的。是的,我已更改为template,但仍然存在相同的问题:(我没有使用自定义指令..使用了两个控制器,并在父控制器中定义了主范围,在父控制器中使用了日期选择器控制器ng更改值。目前它对我有效,但仍有疑问,为什么指令没有从模板中获取更改ng模型…在我看来,模型似乎根本没有更新。
dateTime .directive("DatePicker", function(){
return {
restrict: "E",
transclude: true,
require: "ngModel",
scope:{
ngModel: "=",
dateOptions: "=",
opened: "="
},
link: function($scope, element, attrs, datepickerModel) {
$scope.open = function(event){
event.preventDefault();
event.stopPropagation();
$scope.opened = true;
};
$scope.myModel = new Date();
datepickerModel.$setViewValue($scope.myModel);
$scope.$watch('myModel',function(){
console.log("value changed"+$scope.myModel);
datepickerModel.$setViewValue($scope.myModel);
console.log($scope.myModel);
})
template: ' <input type="date" class="form-control" datepicker-popup="{{format}}" ng-model="myModel" is-open="opened" min-date="minDate" max-date="'2015-06-22'" datepicker-options="dateOptions" date-disabled="disabled(date, mode)" ng-required="true" close-text="Close" />'
}
})