gpt4 book ai didi

javascript - 显示货币符号时出现错误 : [$sce:itype] Attempted to trust a non-string value in a content requiring a string: Context: html,

转载 作者:太空宇宙 更新时间:2023-11-04 16:01:32 24 4
gpt4 key购买 nike

我正在尝试在 angularjs 中使用它们的 unicodes 显示货币符号。我创建了一个 unicode 数组,并使用 ng-repeat 来显示每个货币符号。我还使用了严格的上下文转义,但我收到错误:[$sce:itype] 尝试信任需要字符串的内容中的非字符串值:上下文:html

这是我的index.html。

<div ng-app="myApp">
<div ng-controller="myCtrl">
<p ng-repeat="currency in currencies">
<span data-ng-bind-html="currency | toHtml"></span>
</p>
</div>
</div>

这是我的 app.js

 angular.module('myApp', [])
.filter('toHtml', function($sce) {
return function(input) {
return $sce.trustAsHtml(input);
}
})
.controller('myCtrl', function($scope, $sce) {
$scope.currencies = $sce.trustAsHtml(['U+20B9', 'U+20AC', 'U+0024']);
});

最佳答案

Attempted to trust a non-string value in a content requiring a string: Context: html

您正在尝试对数组调用$sce.trustAsHtml。它只能在字符串上调用。

您需要在每个 unicode 值上调用它,而不是尝试在整个数组上调用它:

var currencies = [];
var unicodes = ['U+20B9', 'U+20AC', 'U+0024'];

angular.forEach(unicodes, function(uc) {
currencies.push($sce.trustAsHtml(uc));
});

$scope.currencies = currencies;

关于javascript - 显示货币符号时出现错误 : [$sce:itype] Attempted to trust a non-string value in a content requiring a string: Context: html,,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42234723/

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