未知的提供程序从Angular 1.0切换到1.2.3

时间:2013-12-02 19:13:52

标签: angularjs

我正在尝试从Angular 1.0迁移到Angular 1.2.3。我添加了angular-route.js作为依赖项,并在我认为应该去的地方添加了ngRoute。这就是我从1.0移动到1.2.3所做的全部工作我遇到了以下错误:

  

错误:未知提供商:$ sceProvider< - $ sce< - $ route< -   ngViewDirective

     

错误:循环依赖:ngViewDirective

以下是我的ng-view所在的html片段:

<div id="wrapper" ng-controller='MyCtrl'>
    <div ng-include src="'application/nav.html'" ng-controller="NavCtrl"></div>
    <div id="content-main" ng-view></div>
</div>

所以我在dom中的ng-view指令上面有控制器。这些控制器都不依赖于ngRoute,只是$ scope和$ location。

这适用于1.0,因此它与移至1.2.3有关,但我没有看到问题。

有谁知道我在这里缺少什么?

2 个答案:

答案 0 :(得分:12)

AngularJS 1.2.1中,route模块已在单个文件angular-route.min.js中拔出,您需要根据错误添加对此文件和angular-sanitize.min.js的引用你发布了。

您还需要在应用中注入ngRoutengSanitize

var app = angular.module('nap.application', ['ngRoute', 'ngSanitize']);

答案 1 :(得分:1)

$sce是AngularJS中的安全服务,您是否正在将ng-bind-html-unsafe用于加载到ng-vew的任何部分?如果是,则需要将其更改为ng-bind-html并包含ngSanitize模块。