bs-button
将内部 a连接bs-form
到组件操作的正确方法是什么?
关于我想做并且已经尝试过的一些背景:
我正在将 Ember 从 2.10 升级到 2.14,并将 ember-bootstrap 从 0.11.3 升级到 1.0。我遇到了 ember-bootstrap 的问题。
我在表单中有两个按钮 ( bs-form
):“保存”和“取消”。表单托管在 Ember 组件中。在旧版本中,我只有两个bs-button
元素,如下所示:
{{bs-button defaultText="Save" type="primary" action="save"}}
{{bs-button defaultText="Cancel" type="primary" action="cancel"}}
在组件类中,我定义了匹配动作:
actions: {
save() { /* do saving stuff */ }
cancel() { /* do cancelling stuff */ }
}
现在这不再有效:bs-button
使用onClick
而不是action
现在,但只是添加onClick="save"
不起作用(我明白了TypeError: action is not a function
);同样,onClick=(action "save")
不起作用(Assertion Failed: An action named 'save' was not found in (generated edit-organization controller)
)。
但是,当不使用bs-button
普通button
元素与action
助手一起使用时,它可以正常工作:
<button class="btn btn-default" {{action 'cancel'}}>Cancel</button>
<button class="btn btn-primary" {{action 'save'}}>Save</button>
我怀疑这个问题与使用组件来托管表单有关;毕竟,ember-bootstrap 文档声明操作用于...
向您的控制器发送一个动作。
我仍然想使用一个组件(毕竟,控制器正在消失,对吧?)。对此的任何帮助表示赞赏。