http://jsfiddle.net/ACzaJ/7/
这个小提琴有以下问题:

  • 当您单击:“清除完成的按钮”时,您将得到以下错误:
    Uncaught Error: assertion failed: Target <Ember.View:ember116> does not have action clearCompletedTodos
    
      And this line generates that error:
     <button {{action clearCompletedTodos  target="Todos.todosController" }} >
          Clear Completed Todos
      </button>
    
  • 我正在尝试两个不同的Submit函数,每次都注释掉一个来尝试另一个:

    2a。当我单击“添加”按钮时,在通过注释掉第二个提交功能而使用第一个提交功能时,不会添加新的待办事项,也不会出错。那什么都没发生。

    2b。当我注释掉第一个提交功能并使用第二个提交功能时,单击添加,将引发以下错误:
    Uncaught TypeError: Cannot call method 'createTodo' of null.
    

  • 我如何制作此待办事项应用,运行并添加和清除待办事项。谢谢

    更新

    现在,@ pauldechov解决了问题1。但是问题2a和2b 尚未解决。 jsfiddle链接也已更新。谢谢@pauldechov。

    更新2

    Peter稍后在此处提供的解决方案出现了问题,Peter在这里解决了新问题:

    Previously working emberjs1.0-pre form on jsfiddle returns "error": "Please use POST request"

    最佳答案

    首先,您好像给了TodoView一个带有空格的id。此id必须是有效的HTML ID,这样肯定会引起一些问题。其次,submit函数在TodoFormView实例上寻找一个值。但是,该值是在TodoView实例上定义的。您需要在两者之间建立绑定(bind)。

    通过暂时摆脱TodoView并仅使用标准TextField,我已经简化了一些事情。另外,您的remaining函数需要更改为用引号而不是get('length')进行get(length)。另外,复选框API与一些较旧的示例有所不同,请参见http://docs.emberjs.com/#doc=Ember.Checkbox

    这是更新的小提琴:http://jsfiddle.net/wagenet/ACzaJ/8/

    09-25 19:11