問題タブ [canjs-model]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - CanJSでonblurの検証をトリガーするにはどうすればよいですか?
init
を実行するCan JSモデルがありますthis.validateNonBlank("title");
。フィールドonblur
からタブで移動したときに、その検証を実行するようにトリガーするにはどうすればよいですか? title
現在、別の要素がchange
イベントをトリガーしたときにのみトリガーされます。
(完全なコードはここにあります。)
javascript - canjs で、モデル インスタンスの存在に基づいて口ひげテンプレートのセクションを条件付きで表示する最も慣用的な方法は何ですか?
口ひげスタイル テンプレートの各モデル インスタンスを反復処理しており、使用可能なインスタンスがない場合 (たとえば、誰かがそれらをすべて削除/破棄した場合) にメッセージを表示するクリーンな方法が必要です。
頭に浮かんだこの最初の方法:
これを行うより良い方法はありますか?canjsのコンテキストでこれを行うより慣用的な方法はありますか?
canjs - Can.Model: プレーン オブジェクトからモデル インスタンスを作成する
findOne、findAll メソッドが定義された can.Model があります。ただし、プレーン オブジェクトからモデル インスタンスを作成する必要がある場合もあります。たとえば、これらのオブジェクトは、最初のページの読み込み時にグローバルとして html でブートストラップされます。
問題は、これらのインスタンスが can.Model.store オブジェクトに格納されているインスタンスとマージされないことです。さらに、 id属性を定義している間はそこに格納されません。期待される動作ですか?変数としてhtmlでブートストラップされたモデルインスタンスを作成する正しいパターンは何ですか?
canjs - canjs の todo リストにアイテムを追加する
canjs.org のフロント ページにある todo リストをコピーして改善しようとしているときに、ちょっとした問題に遭遇しました。この例では、アイテムを todo リストに追加する方法は示していません。そこで、クリックすると newTodo を実行する "Add another" スパンを追加しました。
次に、新しい Todo を保存した後にリストをリセットする newTodo 関数を追加します。
ただし、これによりリストが完全に消去されてから書き直され、醜い点滅効果が発生します。これを行うためのより良い方法があるように感じます。
canjs - can.Model で *static* プロパティを作成する方法
can.Model にメタデータを保存する必要があり、findAll メソッドを使用してそのような JSON を受け取ります。
can.Model.List のようなデータを操作できますが、静的プロパティなどのメタデータが必要です。