マルチページ Meteor アプリを作成しようとしています ( https://github.com/tmeasday/meteor-routerを使用しています)。ページのコンテンツに応じて条件付きで JavaScript を読み込むにはどうすればよいですか?
これが私がやっていることです: メインページには、Meteor-router が使用するタグmain.html
内に {{renderPage}} があります。<body>
ページの 1 つであるこのページ/テンプレートと呼ばれるhome
ものがあり、そのスクリプトのいくつかがあるとします。Meteor がなければ、これらのスクリプトの一部は<header>
jquery などにありますが、他のスクリプトは の最後にあり<body>
ます。home
呼び出されたテンプレートの最後にパーシャルを配置するhomeCustomScripts
と、対応する Template.homeCustomScripts 関数が次のようになります (多くのスクリプトを省略しました。これは単なる例です)。
Template.homeCustomScripts.created = function() {
scriptInsert = function () {
$('head').append('<script type="text/javascript" src="js-plugin/respond/respond.min.js">`
<script type="text/javascript" src="js-plugin/easing/jquery.easing.1.3.js"></script>`
<script type="text/javascript" src="js/custom.js"></script>');
}
}
内部にはcustomScriptmain.html
という別のパーシャルがあり、内部にTemplate.customScript.rendered
は callsがありますscriptInsert()
。
Chromeコンソールに本当に面倒なJavascriptエラーがあり、それが何を意味するのかわからないことを除いて、うまくいくはずです:
<head>
Meteor も JQuery をロードし、Meteor が最後にすべてをロードしていると聞いたので、JQuery プラグインのイージングが JQuery のそのインスタンスの前にロードされるのではないかと推測しています。しかし、私は知りません。
Meteor のマルチページ アプリケーションで異なるページに異なるスクリプトをロードする最良の方法は何ですか?