2

http://jsfiddle.net/ACzaJ/7/ このフィドルには次の問題があります。

  1. 「完了ボタンをクリア」をクリックすると、次のエラーが表示されます。

    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>
    
  2. 私は 2 つの異なる送信機能を試しています。一度に 1 つをコメントアウトして、もう 1 つを試してください。

    2a. 「追加」ボタンをクリックすると、最初の送信機能を使用して2番目の送信機能をコメントアウトすると、新しいtodoは追加されず、エラーはありません。それは何も起こりません。

    2b. 最初の送信関数をコメントアウトし、2 番目の送信関数を使用して [追加] をクリックすると、以下のエラーがスローされます。

    Uncaught TypeError: Cannot call method 'createTodo' of null.
    

この todo アプリを作成し、実行して todo を追加およびクリアするにはどうすればよいですか。ありがとう

アップデート

質問 1 は、@pauldechov によって解決されました。しかし、質問 2a と 2bは未解決です。jsfiddle リンクも更新されました。ありがとう@pauldechov。

更新 2

ここでピーターが提供したソリューションには後で問題があり、ピーターはここで新しい問題を解決しました。

以前は jsfiddle で作業していた emberjs1.0-pre フォームが「エラー」を返しました:「POST リクエストを使用してください」

4

1 に答える 1

5

まず、スペースをTodoView含む anを指定したようです。idこれidは有効な HTML ID である必要があるため、問題が発生することは間違いありません。次に、submit関数は のインスタンスの値を探していますTodoFormView。ただし、値はTodoViewインスタンスで定義されます。2 つの間のバインドを設定する必要があります。

TodoView今のところを取り除き、標準を使用するだけで、物事を少し単純化しましたTextField。また、代わりに引用符を使用remainingするように関数を変更する必要がありました。さらに、チェックボックス API は古い例の一部から変更されています。 http://docs.emberjs.com/#doc=Ember.Checkboxを参照してください。get('length')get(length)

更新されたフィドルは次のとおりです。http://jsfiddle.net/wagenet/ACzaJ/8/

于 2012-08-17T14:42:56.993 に答える