如何将计算字符串传递给AngularJS中的函数?
这是我的代码:
<div ng-click="wos.wordFormRowClicked(wf)"
ng-form="wos.wordFormNgForm_{{wf.wordFormIdentity}}"
ng-repeat="wf in wos.word.wordForms">
<div>
<div ng-click="wos.wordFormDefinitionRowClicked(d)"
ng-repeat="d in wf.wordDefinitions">
<div>
<span ng-click="wos.wordFormDeleteDefinition("wos.wordFormNgForm_{{wf.wordFormIdentity}}", wf.wordFormId, d.wordDefinitionId)"
></span>
</div>
我正在尝试传递一个字符串作为函数wos.wordFormDeleteDefinition
的第一个参数,但它给了我一个运行时错误。我怎么能这样做?
答案 0 :(得分:1)
您可以尝试此操作 - 使用str_param
ng-init
<span ng-init="str_param = (wos.wordFormNgForm_{{wf.wordFormIdentity}} | toString)"
ng-click="wos.wordFormDeleteDefinition(str_param, wf.wordFormId, d.wordDefinitionId)">
</span>
PS:我不确定这些值是什么,如果上述代码失败,请尝试删除{{}}
和| toString
以查看是否有效。
答案 1 :(得分:1)
由于您希望对字符串进行插值,因此将表达式和字符串作为2个不同的值传递给函数并在控制器中处理它们:
<span ng-click="wos.wordFormDeleteDefinition('wos.wordFormNgForm_', wf.wordFormIdentity, wf.wordFormId, d.wordDefinitionId)"
></span>