【发布时间】:2013-09-18 07:00:46
【问题描述】:
我正在尝试从我的主控制器更改指令。
这是指令代码
# directive.coffee
application.directive 'btnState', ->
{
restrict: 'A'
link: (scope, el, attrs) ->
attrs.$observe 'ngModel', (newVal) ->
switch newVal
when 'loading'
# do something
when 'reset'
# do other thing
el.click (event) ->
attrs.$set 'ngModel', 'loading'
return
}
现在在我的模板中
<button id="#do-btn" ng-click="doSometing()" ng-model="ns.btn_state" btn-state>Do it</button>
<button id="#cancel-btn" ng-click="ns.btn_state = 'reset'">Cancel</button>
当我点击 #do-btn 按钮工作正常时,$observe 捕捉到变化,但是当我尝试从外部更改 ns.btn_state 时永远不会捕捉到
我该如何解决这个问题?
我正在使用角度 1.0.7
【问题讨论】:
标签: angularjs coffeescript angularjs-directive