Cor*_*han 58 javascript angularjs angularjs-ng-click
我想使用ng-click来执行多个表达式.我想在模型上设置一个值,并从中调用一个方法$scope,如下所示:
<a ng-click="navigation.book = book && bookSvc.showBook(book)" href="#{{book.id}}">{{book.title}}</a>
Run Code Online (Sandbox Code Playgroud)
我在哪里&&分离了我想要执行的两个不同的表达式.我知道我可以添加一个在控制器中执行这两项操作的方法.我应该这样做,还是有办法直接从里面执行两个表达式ng-click?
uri*_*ish 130
只需使用';' 而不是'&&'来分隔表达式应该适合你:
<a ng-click="navigation.book = book; bookSvc.showBook(book)" href="#{{book.id}}">{{book.title}}</a>
Run Code Online (Sandbox Code Playgroud)
Max*_*tin 11
你只能写表达式ng-click.
ngClick指令允许您在单击元素时指定自定义行为.
但你可以这样写:
<a ng-click="( (navigation.book = book) && bookSvc.showBook(book))" href="#{{book.id}}">{{book.title}}</a>
Run Code Online (Sandbox Code Playgroud)
在这种情况下navigation.book获取book内容.
演示 Fiddle
参考
我们在这里有几个选项可供调用 navigation.book = book
如果我们写下会发生什么:
ng-click="( bookSvc.showBook(book) && (navigation.book = book))"
Run Code Online (Sandbox Code Playgroud)
在这种情况下,如果(好像bookSvc是一个服务)bookSvc.showBook(book)返回任何内容或false中,navigation.book = book将永远不会执行.
演示2 Fiddle
但是,如果bookSvc.showBook(book)返回true的navigation.book = book将被调用.
演示3 Fiddle
| 归档时间: |
|
| 查看次数: |
88550 次 |
| 最近记录: |