Mic*_*ams 9 javascript phantomjs angularjs
我正在尝试使用PhantomJS预渲染我的AngularJS网站.(使用来自http://www.yearofmoo.com/2012/11/angularjs-and-seo.html的 phantomjs-runner.js )我无法通过PhantomJS加载页面,因为下面的错误发生了.在IE/Chrome/Firefox中不会发生此错误.
我该如何解决此错误?
错误:
Error: [$injector:modulerr] Failed to instantiate module SpaceForAfrica due to:
Error: [$injector:modulerr] Failed to instantiate module dialogs due to:
Error: [$injector:modulerr] Failed to instantiate module ngSanitize due to:
Error: [$injector:nomod] Module 'ngSanitize' is not available! You either misspelled the module name or forgot to load it. If registering a
module ensure that you specify the dependencies as the second argument.
http://errors.angularjs.org/1.2.1/$injector/nomod?p0=ngSanitize
at http://ajax.googleapis.com/ajax/libs/angularjs/1.2.1/angular.js:1507
at ensure (http://ajax.googleapis.com/ajax/libs/angularjs/1.2.1/angular.js:1435)
at module (http://ajax.googleapis.com/ajax/libs/angularjs/1.2.1/angular.js:1717)
at http://ajax.googleapis.com/ajax/libs/angularjs/1.2.1/angular.js:3527
Run Code Online (Sandbox Code Playgroud)
模块配置
var SpaceForAfrica = angular.module('SpaceForAfrica', ['ngRoute', 'HashBangURLs', 'ui.bootstrap', 'ui.bootstrap.tpls', 'google-maps', 'ui.growl', 'dialogs', 'ngSanitize', 'angularSpinner','angulartics', 'angulartics.google.analytics']).config(spaceForAfricaConfig);
Run Code Online (Sandbox Code Playgroud)
小智 17
看起来您可能缺少对ngSanitize代码的引用.ngSanitize是AngularJS框架(https://docs.angularjs.org/api/ngSanitize)的一部分,但是,您必须在PhantomJS参考之前包含一个单独的引用才能使用它.
您似乎正在使用AngularJS的1.2.1版本,因此您可以轻松添加其中一个标记(或者获取代码以包含在您自己的应用中).
非精缩:
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.2.1/angular-sanitize.js"></script>
Run Code Online (Sandbox Code Playgroud)
精缩:
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.2.1/angular-sanitize.min.js"></script>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
20626 次 |
| 最近记录: |