Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 指令/控制器与watch表达式之间的双向绑定_Javascript_Angularjs - Fatal编程技术网

Javascript 指令/控制器与watch表达式之间的双向绑定

Javascript 指令/控制器与watch表达式之间的双向绑定,javascript,angularjs,Javascript,Angularjs,使用Angular 1.0.8--我无法更新它 我创建了一个简单的datepicker指令,它创建了三个带有日期选项的。这将使用一个隔离范围来存储选择,并根据月/年更新显示的天数。我还需要将派生日期(年-月-日)传递回控制器,但我不知道如何执行此操作 app.directive("datepicker", function () { return { restrict: "E", scope: { current: "=" }, contr

使用Angular 1.0.8--我无法更新它

我创建了一个简单的datepicker指令,它创建了三个带有日期选项的
。这将使用一个隔离范围来存储选择,并根据月/年更新显示的天数。我还需要将派生日期(年-月-日)传递回控制器,但我不知道如何执行此操作

app.directive("datepicker", function () {
    return {
        restrict: "E",
        scope: { current: "=" },
        controller: function ($scope) {
            // logic for d/m/y on scope omitted

            $scope.watch(dateHasChanged, function (newValue) {
                $scope.current = newValue;
            });
        }
    }
});
控制器具有
$scope.current={answer:}
,因此我尝试使用
scope:{current:=“}
在指令和控制器之间创建绑定。这显然根本不起作用



另外,monthList中的month的
ng options=“month.date As month.english for month in monthList”
也不能正常工作。它以0开头的
month.date
,即使
monthList
的第一个
month.date
为1。这可能是因为版本的原因吗?

您正在覆盖
作用域。当前的
对象应该正在更新
作用域。当前的[property]


日期计算有点问题,但我真的不明白你做错了什么。。。这是你想要的还是我错过了什么?您正在将日期分配给
current
,但您正在使用
current.answer
将其显示在控制器范围内。把这归咎于长时间的工作顺便说一句,选中一月时,$watch中的month.date等于1(至少在我的计算机上是这样)。