私はノックアウト、要求、アンダースコアを使用して小さなアプリケーションを構築しようとしています。
requireを呼び出すインデックスページがあり、それはmain.jsを指しています。
require.config({
paths: {
jquery: 'vendor/jqm/jquery_1.7_min',
knockout: 'vendor/knockout/knockout-2.2.0',
underscore : 'vendor/underscore/underscore_amd',
text: 'vendor/require/text',
templates: '../templates'
}
});
define(['app'], function(app) {
});
私のインデックスの残りの部分には本体がありません。したがって、これがロードされると、app.jsが呼び出されます
define(['jquery','knockout', 'appViewModel'],
function($, ko, appViewModel)
{
ko.applyBindings(new appViewModel());
});
次に、これは正常に機能するappViewModelを呼び出す必要があります。これは、appViewModelからテンプレートをロードしたいので、少し混乱するところです。
だから私はこのようなことをしようとしています
define(['jquery','knockout', 'text!templates/homeViewTemplate.html', 'jqm'],
function($, ko, homeViewTemplate) {
//call and load in template
});
これは私が少し立ち往生しているところです私はバックボーンで知っています例えば私は使うことができます
template:_.template(homeViewTemplate)
しかし、ここにテンプレートをロードする最良の方法は本当にわかりません
https://github.com/ifandelse/Knockout.js-External-Template-Engineを見てきましたが、これはrequireではうまく機能しません。requireなしで使用し、htmlファイルにテキストを入れて呼び出すだけです。 jQuery mobileを使用すると、クラスなどが追加されません。
誰かが私を正しい方向に向けることができるかどうか疑問に思いました..私は本当にここにどのコードを入れるべきかを考え出そうとしていると思います
define(['jquery','knockout', 'text!templates/homeViewTemplate.html', 'jqm'],
function($, ko, homeViewTemplate) {
//call and load in template
});
homeviewtemplateを呼び出します。
ありがとう