//index.html
//app.js
angular.module('app', 'test-module')
如果我没有像下面这样在我的任何脚本中注册测试模块:
angular.module('test-module', [])
我将在浏览器中出现以下错误并且将无法加载整个网站:
Uncaught Error :[$injector:modulerr] 由于以下原因无法实例化模块应用程序:
错误:[$injector:modulerr] 由于以下原因无法实例化模块测试模块:
错误:[$injector:nomod] 模块“test-module”不可用!您要么拼错了模块名称,要么忘记加载它。如果注册模块,请确保将依赖项指定为第二个参数。
Q:如何保证网站页面在出现未知模块加载错误的情况下仍能加载?
最佳答案
我觉得你应该换个 Angular 来看待这个问题。
如果你在开发过程中使用test-module(测试模块)。您可以配置后端以在多个环境中工作。例如 dev、test 和 prod。您可以处理子域并决定后端需要加载哪些模块。 dev.yourdomain.com(用于开发环境)、yourdomain.com(用于生产环境)和 test.yourdomain.com(用于试用) .
你可以生成这样的脚本:
<script type="text/javascript">
var MyModules = ['test-module'];
</script>
然后这样处理:
angular.module.apply(angular, 'app', MyModules);
关于javascript - 如何避免或跳过 Angular.js 中的模块加载错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19924071/