環境
私はいじり回して、独自の (ちょうど別の) SPA フレームワークを作成しようとしています。このフレームワークでは、カスタム コンポーネント ローダーを作成して、ロードしているビューモデルでいくつかの依存性注入を実行できるようにしようとしています。
使用した KnockoutJS バージョン: 3.3.0
問題
loadViewModel
カスタム コンポーネント ローダーの関数は、コンポーネントの読み込み時に実行されません。
参照用のコード (ファイルを参照):
injector(function (ko) {
ko.components.loaders.unshift({
getConfig: function (name, callback) {
var parts = name.split("/");
callback({
require: "components/" + name + "/" + parts[parts.length - 1]
});
},
loadViewModel: function (name, viewModelConfig, callback) {
console.log(arguments);
callback(null);
}
});
});
injector
この関数は、私が書いたカスタムの依存関係リゾルバーにすぎないことに注意してください。define
(AMD コンポーネントのorrequire
呼び出しとほとんど同じです。)
関数はgetConfig
適切に実行されます。
私の落書きの完全な概要については、この git リポジトリを参照してください