ember select 菜单操作中的 2 个参数
ember 2 parameters in a action of a select menu
我试图在 ember 操作中传递多个参数。
问题是其中一个参数是 value='target.value' 并且显然 Ember 不喜欢添加第二个参数。
如何传递这两个参数?
value='target.value' 如果我只需要一个参数就可以工作。
我试过这样写,但类别未定义。
{{#each selectorsData as |selectorItem|}}
<select onchange={{ action selectorItem.action value='target.value' category='selectorItem.name' }}>
我也试过这种方法,但是Ember给我一个错误
{{#each selectorsData as |selectorItem|}}
<select onchange={{ action selectorItem.action value='target.value' selectorItem.name }}>
Error: Parse error on line 4:
....value' selectorItem.name }}>
尝试这样的事情:
<select onchange={{action selectorItem.action target.value selectorItem.name}}>
....
yourAction: function(targetValue, selectorItemName) {..}
要完成此操作,您必须使用关闭操作。
Reference to Invoking Action
控制器
export default Ember.Controller.extend({
appName: 'Ember Twiddle',
selectorsData: [
{ name: 'mike', value: '1', action: 'alert', options: ["1", "2"] },
{ name: 'steve', value: '2', action: 'alert', options: ["1", "2"] }
],
actions: {
alert(value, name, target) {
alert("Hello: " + value + " - " + name + "-" + target);
}
}
});
模板
<h1>Welcome to {{appName}}</h1>
<br>
<br>
{{outlet}}
<br>
<br>
{{#each selectorsData as |selectorItem|}}
<label>{{selectorItem.name}}</label>
<select onchange={{action (action selectorItem.action selectorItem.value selectorItem.name) value="target.value"}}>
{{#each selectorItem.options as |option|}}
<option value={{option}}>{{option}}</option
{{/each}}
</select>
<br>
{{/each}}
我试图在 ember 操作中传递多个参数。 问题是其中一个参数是 value='target.value' 并且显然 Ember 不喜欢添加第二个参数。
如何传递这两个参数? value='target.value' 如果我只需要一个参数就可以工作。
我试过这样写,但类别未定义。
{{#each selectorsData as |selectorItem|}}
<select onchange={{ action selectorItem.action value='target.value' category='selectorItem.name' }}>
我也试过这种方法,但是Ember给我一个错误
{{#each selectorsData as |selectorItem|}}
<select onchange={{ action selectorItem.action value='target.value' selectorItem.name }}>
Error: Parse error on line 4:
....value' selectorItem.name }}>
尝试这样的事情:
<select onchange={{action selectorItem.action target.value selectorItem.name}}>
....
yourAction: function(targetValue, selectorItemName) {..}
要完成此操作,您必须使用关闭操作。 Reference to Invoking Action
控制器
export default Ember.Controller.extend({
appName: 'Ember Twiddle',
selectorsData: [
{ name: 'mike', value: '1', action: 'alert', options: ["1", "2"] },
{ name: 'steve', value: '2', action: 'alert', options: ["1", "2"] }
],
actions: {
alert(value, name, target) {
alert("Hello: " + value + " - " + name + "-" + target);
}
}
});
模板
<h1>Welcome to {{appName}}</h1>
<br>
<br>
{{outlet}}
<br>
<br>
{{#each selectorsData as |selectorItem|}}
<label>{{selectorItem.name}}</label>
<select onchange={{action (action selectorItem.action selectorItem.value selectorItem.name) value="target.value"}}>
{{#each selectorItem.options as |option|}}
<option value={{option}}>{{option}}</option
{{/each}}
</select>
<br>
{{/each}}