問題タブ [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.

0 投票する
2 に答える
482 参照

javascript - Canjs - メソッドを追加して can.Model を拡張する

これを尋ねるのは私が初めてではありません...答えは基本的に「RESTのやり方が間違っている」と言います。当然のことですが、開発はトレードオフに満ちており、API を書き直す立場にないことがよくあります。

当面の問題に移りますが、あるリソースのメソッドをモデルに追加する最もエレガントな方法は何ですか?

jsfiddle

0 投票する
0 に答える
100 参照

javascript - CanJSでonblurの検証をトリガーするにはどうすればよいですか?

initを実行するCan JSモデルがありますthis.validateNonBlank("title");。フィールドonblurからタブで移動したときに、その検証を実行するようにトリガーするにはどうすればよいですか? title現在、別の要素がchangeイベントをトリガーしたときにのみトリガーされます。

(完全なコードはここにあります。)

0 投票する
1 に答える
112 参照

javascript - canjs で、モデル インスタンスの存在に基づいて口ひげテンプレートのセクションを条件付きで表示する最も慣用的な方法は何ですか?

口ひげスタイル テンプレートの各モデル インスタンスを反復処理しており、使用可能なインスタンスがない場合 (たとえば、誰かがそれらをすべて削除/破棄した場合) にメッセージを表示するクリーンな方法が必要です。

頭に浮かんだこの最初の方法:

これを行うより良い方法はありますか?canjsのコンテキストでこれを行うより慣用的な方法はありますか?

0 投票する
1 に答える
60 参照

canjs - Can.Model: プレーン オブジェクトからモデル インスタンスを作成する

findOne、findAll メソッドが定義された can.Model があります。ただし、プレーン オブジェクトからモデル インスタンスを作成する必要がある場合もあります。たとえば、これらのオブジェクトは、最初のページの読み込み時にグローバルとして html でブートストラップされます。

問題は、これらのインスタンスが can.Model.store オブジェクトに格納されているインスタンスとマージされないことです。さらに、 id属性を定義している間はそこに格納されません。期待される動作ですか?変数としてhtmlでブートストラップされたモデルインスタンスを作成する正しいパターンは何ですか?

0 投票する
0 に答える
126 参照

canjs - canjs の todo リストにアイテムを追加する

canjs.org のフロント ページにある todo リストをコピーして改善しようとしているときに、ちょっとした問題に遭遇しました。この例では、アイテムを todo リストに追加する方法は示していません。そこで、クリックすると newTodo を実行する "Add another" スパンを追加しました。

次に、新しい Todo を保存した後にリストをリセットする newTodo 関数を追加します。

ただし、これによりリストが完全に消去されてから書き直され、醜い点滅効果が発生します。これを行うためのより良い方法があるように感じます。

0 投票する
1 に答える
98 参照

canjs - can.Model で *static* プロパティを作成する方法

can.Model にメタデータを保存する必要があり、findAll メソッドを使用してそのような JSON を受け取ります。

can.Model.List のようなデータを操作できますが、静的プロパティなどのメタデータが必要です。