Javascript Emberjs-使用视图/把手辅助工具创建一个关注自身的按钮

Javascript Emberjs-使用视图/把手辅助工具创建一个关注自身的按钮,javascript,jquery,view,ember.js,handlebars.js,Javascript,Jquery,View,Ember.js,Handlebars.js,我有一个Handlebar helper视图,它使用Em.Button(我知道它不推荐使用)来创建一个停用按钮,当按钮出现时,该按钮会聚焦于自身。单击该按钮将触发“删除”操作,而focus out将使用一个操作来“取消删除” 问题是把手助手没有关闭{{/}把手,阻止我在按钮中插入文本,按钮最终只是一个空壳如何给此按钮一个文本值?或是否有一种更简单的方法可以在没有Em的情况下制作此按钮。按钮? 绿色复选框将转到使此按钮工作的答案 车把辅助对象看起来像这样 {{delete-recordCatego

我有一个Handlebar helper视图,它使用Em.Button(我知道它不推荐使用)来创建一个停用按钮,当按钮出现时,该按钮会聚焦于自身。单击该按钮将触发“删除”操作,而focus out将使用一个操作来“取消删除”

问题是把手助手没有关闭{{/}把手,阻止我在按钮中插入文本,按钮最终只是一个空壳如何给此按钮一个文本值?是否有一种更简单的方法可以在没有Em的情况下制作此按钮。按钮?

绿色复选框将转到使此按钮工作的答案

车把辅助对象看起来像这样

{{delete-recordCategory class="" value=recordCategory focus-out="cancelDeactivate" insert-newline="cancelDeactivate"}}
在视图中,我使用添加了焦点和单击“停用”操作

VpcYeoman.DeleteRecordCategoryView = Em.Button.extend(Ember.ViewTargetActionSupport, {
  click: function() {
    this.triggerAction({
      action: 'deactivateCategoryNow'
    }); // Sends the `save` action, along with the current context
        // to the current controller
  },
  didInsertElement: function() {
    this.$().focus();
  }
});

Ember.Handlebars.helper('delete-recordCategory', VpcYeoman.DeleteRecordCategoryView);
ember站点建议将ember.ViewTargetActionSupport作为向该视图添加操作的方式


余烬v。1.0《余烬》按钮不仅已被弃用,而且已从新版本中完全删除。绝对不是你想留下的东西。试着写你自己的。下面是一个组件的快速示例,它可以实现您想要的功能:

App.FocusButtonComponent = Ember.Component.extend({
    didInsertElement: function() {
        Em.run.later(function() {
            this.$('button').focus();
        }.bind(this), 1);
    },

    actions: {
        click: function() {
            this.sendAction('click');
        }
    }
});
焦点按钮.hbs

<button {{action 'click' on='click' bubbles=false}}>
    {{yield}}
</button>

{{yield}}
然后,你可以这样使用它:

{{focus-button click='deactivateCategoryNow'}}
    Text Goes Here. Could be anything. <strong>Anything.</strong>
{{/focus-button}}
{{focus button click='deactivateCategoryNow'}
文本在这里。可能是任何东西任何东西。
{{/焦点按钮}

加一!这个很好,很管用!我要了。