为什么没有调用ngModel。$ render?

时间:2014-01-13 06:45:40

标签: javascript angularjs angularjs-directive angularjs-model

编辑1:修正了一个错误,但仍无效。

element.val(ngModel.$viewValue || '');

应该是:

dateInput.val(ngModel.$viewValue || '');

编辑2 :问题似乎是由于隔离范围。当作用域是隔离时,不会调用注入的ngModel的{​​{1}}方法。如果我将范围设置为非隔离并设置$render(),则会按预期调用ng-model="selectedDate"

编辑3 :实际上问题归因于$render()。如果我将其更改为$parent.selectedDate,代码似乎工作正常。但是,我想确保selectedDate没有在指令的作用域上定义,但它是从其父作用域继承的。这就是为什么我想使用selectedDate,但它没有按预期工作。


我正在编写一个自定义日期选择器,当浏览器支持HTML5日期输入时,使用它,否则使用jQuery UI的日期选择器。它仍在进行中,现在只有使用本机HTML 5日期输入的部分正在实施。

该指令可以像这样使用:

$parent.

但是,当<div mil-datepicker ng-model="$parent.selectedDate"></div> 具有初始值时,指令不会呈现它。此指令也不会对selectedDate`进行外部更改(例如,通过单击按钮)。

我的代码可能有什么问题吗?

以下是代码的实时版本:milDatePicker

以下是该指令的代码:

$scope.selectedDate

0 个答案:

没有答案