在我的angularJS应用程序中,我使用了一个指令。该指令需要知道应用程序范围中变量的值。因为应用范围变量需要在指令更新时更改,并且当应用范围变量更改时指令变量需要更改,我使用双向绑定。 在我的指令中:
scope: {
"selectedObject": "=selectedobject"
}
在我的HTML中:
<dirname selectedobject="foo"/>
并在我的控制器中:
$scope.foo = "somevalue";
//$scope.$apply(); Adding this, I get a '$digest already in progress' error
现在当我尝试在我的指令中读取selectedObject
的值时,它以null而不是“somevalue”开头。但是,指令范围中所做的更改会很好地传播到应用程序范围。我怎样才能确保它的相反方式呢?那,如果我的控制器改变了foo的值,这个改变会传播到指令范围吗?
答案 0 :(得分:0)
请阅读以下文章,因为我相信您陷入了常见的陷阱,本文将帮助您了解您的问题
http://nathanleclaire.com/blog/2014/04/19/5-angularjs-antipatterns-and-pitfalls/