我正在尝试制作一个多页 Meteor 应用程序(我正在使用https://github.com/tmeasday/meteor-router)。如何根据页面内容有条件地加载 javascript?
这就是我正在做的事情:主页main.html
在标签中有一个 {{renderPage}} ,<body>
这是 Meteor-router 使用的。假设有这个页面/模板被调用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>');
}
}
在main.html
我有另一个名为 customScript 的部分,我有内部Template.customScript.rendered
调用scriptInsert()
。
它应该可以工作,除了 Chrome 控制台上有一些非常混乱的 Javascript 错误,我不知道这意味着什么:
我猜是因为 Meteor 还加载了 JQuery,<head>
而且我听说 Meteor 最后加载了所有内容,所以可能在该 JQuery 实例之前加载了 JQuery 插件缓动。但我不知道。
在 Meteor 的多页应用程序中为不同页面加载不同脚本的最佳方法是什么?