gpt4 book ai didi

javascript - AngularJS:版本 1.2.3 中 $sce 的 'Unknown provider' 错误

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:06:20 26 4
gpt4 key购买 nike

我使用的是 AngularJS 1.2.3,它应该默认启用 SCE 服务。但是,我收到以下错误:

http://errors.angularjs.org/1.2.3/$injector/modulerr?p0=SaveApp&p1=Error: [$injector:unpr]   
http://errors.angularjs.org/1.2.3/$injector/unpr?p0=%24sce
at Error (native)

这是我的代码:

var AwesomeApp = angular.module('AwesomeApp', ['ngCookies', 'ngSanitize', 'ngRoute', 'ui.bootstrap', 'ui.router'], function($httpProvider, $dialogProvider) {

再往下一点:

AwesomeApp.config(['$routeProvider', '$compileProvider', '$sce', function($routeProvider, $compileProvider, $sce) {

$routeProvider.
when('/', {templateUrl: $sce.getTrustedResourceUrl(chrome.extension.getURL('app.html')), controller: 'searchResultsController'}).
otherwise({redirectTo: '/'});

知道为什么会出现Unknown Provider 错误吗?

最佳答案

$sce 是一个服务(不是提供者)

您不能仅将服务注入(inject)到配置 block 中。

你可以做的是注入(inject)$sceDelegateProvider并创建一个白名单:

.config(function($sceDelegateProvider){

$sceDelegateProvider.resourceUrlWhitelist(['self','http://*.url.com/**']);

})

来自$sceDelegateProvider docs :

The $sceDelegateProvider provider allows developers to configure the $sceDelegate service. This allows one to get/set the whitelists and blacklists used to ensure that the URLs used for sourcing Angular templates are safe.

关于javascript - AngularJS:版本 1.2.3 中 $sce 的 'Unknown provider' 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21832257/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com