我想加载具有依赖项的特定于页面的Javascripts。我知道:documentation
中描述的@scripts但我想使用Require.js来管理我的模块依赖项:
require([
'jquery',
'bootstrap',
'unicorn'
], function($){
//console.log(document.location.pathname); // causes integration test to fail
switch (document.location.pathname)
{
case '/login' :
require(['lib/login'], function(){
// maybe some validation
})
case '/events' :
require (['lib/underscore']), function () {
// page-specific scripts
})
}
是否有更好的方法来处理特定于页面的脚本。例如,如果我有:
case 'events/:id'
进行正则表达式匹配不是最好的主意。我宁愿在服务器端模板中使用它。我应该使用Backbone.js路由器之类的东西。如果是这样,它是如何做到的?
另外,我不能只在我的服务器端模板中包含一个标记,因为我从main.scala.html继承了require.js和data-main
@helper.requireJs(core = routes.Assets.at("javascripts/require.js").url, module = routes.Assets.at("js/main").url)
谢谢! Jack Chi
答案 0 :(得分:0)
+1,我认为这是一个真正的问题, 我正在使用angualrJs,我和路由器几乎有同样的问题, 我唯一能做的就是在全局控制器类中处理这个问题 使用notfoundError结合每个请求的正则表达式[2ms]。
我认为玩家应该为此工作[可能已经实施了....我不知道] 我认为最好的办法是将虚拟路由器与Apache虚拟主机类似。