Pan*_*agi 19 javascript handlebars.js ember.js
我有一个项目列表:
<ul>
{{#each applications}}
<li>
<a {{bindAttr href="url"}}
{{action "appClicked" on="click"}}>
{{name}}
</a>
</li>
{{/each}}
</ul>
Run Code Online (Sandbox Code Playgroud)
点击它会调用appClicked该模板所属的视图方法.我想将一些信息(例如,应用程序的名称)传递给方法appClicked.像,{{action "appClicked(name)" on="click"}}.
有可能,怎么样?
lau*_*hub 17
显然,Ember现在已经发展,并且有能力将参数传递给动作:
{{action "functionName" parameter}}
Run Code Online (Sandbox Code Playgroud)
在你的情况下,那将是:
<a {{bindAttr href="url"}}
{{action "appClicked" name on='click'}}>
{{name}}
</a>
Run Code Online (Sandbox Code Playgroud)
但是,您可以从模型中传递任何属性(如id)而不是名称.
有关更多信息,请参见http://emberjs.com/guides/templates/actions/.
Hao*_* Li 14
API表示您可以传递多个参数.
HTML和把手:
{{officename}}
<button {{action "actionTest" "hello" "goodbye" officename}}>See parameters through action in the console</button>
Run Code Online (Sandbox Code Playgroud)
控制器:
actionTest: function(a, b, c){
console.log(a);
console.log(b);
console.log(c);
},
Run Code Online (Sandbox Code Playgroud)
我正在考虑更多这方面的内容,因为你可以通过实际视图访问更多内容.但扎克,如果你能解释一下,如果这不是你想要的东西,你究竟要做什么呢?
http://jsfiddle.net/ud3323/4ysxQ/
| 归档时间: |
|
| 查看次数: |
28193 次 |
| 最近记录: |