什么是处理非资源功能的余烬方式?

时间:2014-03-31 03:44:29

标签: javascript ember.js

Get-Post-Put-Delete资源请求很好。我想知道处理非资源函数的ember方法是什么?

例如,我有一个向上/向下投票的按钮,它有一个像/ vote / up / 2343和/ vote / down / 2343这样的路线 - 它还会绑定当前显示的用户投票数。

或者我们有一个按钮,它应该显示一个模态表单,一旦提交到后端,就会发送一封电子邮件。

谢谢!

1 个答案:

答案 0 :(得分:1)

不确定我是否完全理解了这个问题,但我的解释是你希望行动不是一条路。

对于该特定路线/资源,有一个控制器。在该控制器中,您有一个actions属性。

actions:{
  voteUp: function(){
    this.incrementProperty('votes');
    // Make ajax request to server 
    this.get('content').save(); // whatever implementation on your model
  }
}

在模板中,您可以指明响应操作的元素。

<button {{action 'voteUp'}}>Vote Up</button>

在您拥有已定义操作的控制器中,您还可以拥有可以发出ajax请求并更改模型属性的方法,在本例中为投票。

对于你的模态对话框,我建议阅读EmberJS文档:http://emberjs.com/guides/cookbook/user_interface_and_interaction/using_modal_dialogs/