gpt4 book ai didi

javascript - 使用 $compileProvider 避免不安全链接

转载 作者:行者123 更新时间:2023-11-30 07:57:00 25 4
gpt4 key购买 nike

我可以毫不费力地注入(inject) $scope 和 $location 以及 $routeProvider 之类的东西,为什么 $compileProvider 不同?

基于 this answer ,我知道我必须指示 angular 不要为某些链接添加前缀(在我的例子中是 sms),但我不能在我的项目中应用答案。它说我应该添加这个:

angular.module('myModule', [], function ($compileProvider) {
$compileProvider.aHrefSanitizationWhitelist(/^\s*(https?|ftp|mailto|file):/);
});

但是 chrome 控制台说:

"angular.js:68 Uncaught Error: [$injector:unpr] Unknown provider: $compileProviderProvider <- $compileProvider"

那个“provider-provider”的东西让我认为服务的真实名称只是 $compile(并且那个 Angular 是在“provider”后缀上添加的:

angular.module('myModule', [], function ($compile) {
$compile.aHrefSanitizationWhitelist(/^\s*(https?|ftp|mailto|file):/);
});

但是,不出所料,我猜,我得到:

angular.js:13550 TypeError: $compile.aHrefSanitizationWhitelist is not a function

最佳答案

那是因为你必须将它添加为配置:

angular.module('myModule').config(['$compileProvider',
function($compileProvider) {
$compileProvider.aHrefSanitizationWhitelist(/^\s*(https?|ftp|mailto|file):/);
}
]);

关于javascript - 使用 $compileProvider 避免不安全链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37491931/

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