使用Requirejs在底部加载javascripts

时间:2014-08-07 06:25:28

标签: javascript angularjs requirejs

我一直在努力实现这个POST。但是我已经看到在头部或底部使用RequireJs,它总是在头部加载依赖的javascript文件。有什么办法可以强制RequireJs总是在底部加载依赖脚本?

我想解决的问题是:我想根据路线加载特定的控制器。但我一直在视图中定义ng-controller =“MyCtrl”属性。所以当所有依赖脚本和特定控制器加载它无法找到ng-controller属性并给我以下错误时:

Error: [ng:areq] Argument 'MyCtrl' is not a function, got undefined 

这是问题还是我错过了其他的东西?

2 个答案:

答案 0 :(得分:0)

大多数异步加载器会将脚本加载到头部。由于DOM已经被解析,因此此时尝试在底部加载任何东西几乎没有任何优势。因此,无论您是在头部还是底部添加require.js,都无关紧要。

关于您获得的错误: -

你正在使用类似的东西 resolve:resolveController(' /app/controllers/customersController.js') 并包含routeResolver.js

答案 1 :(得分:0)

如果您不想在标题中加载脚本,则可以"要求" "要求"函数,然后要求模块使用你想要使用的任何东西:

define(['require'], function(require){

    ...

    var ctrl = require('path/to/your/controller');

});