【发布时间】:2018-09-15 04:20:58
【问题描述】:
我是 Angular js 的新手,我正在尝试使用 Angular js 格式化 json 数据。
这是我的 json 数据
[
{"field_add_link": "<a href=\"/drupal3/drupal3/\">Home</a>"},
{"field_add_link": "<a href=\"/drupal3/drupal3/about\">About Us</a>"}
]
这是我的控制器
var myApp = angular.module('myApp', ['ngSanitize']);
myApp.controller('myController',function($scope, $http) {
$http.get('http://localhost/drupal3/menu')
.then(function(response) {
$scope.links = response;
});
});
最后是我如何使用 angular 获取 json 数据
<div class="col-md-8 content" ng-controller ="myController">
<div class="col-md-12" ng-repeat="link in links" ng-bind-html="links">
<p>{{ link.field_add_link }}</p>
</div>
</div>
在此之后没有显示输出,在浏览器的控制台中出现错误Error: [$sce:unsafe] Attempting to use an unsafe value in a safe context.
但是当我使用ng-bind-html="links[0].field_add_link 而不是ng-bind-html="links" 和<p>{{ link[0].field_add_link }}</p> 而不是<p>{{ link.field_add_link }}</p> 时
然后我得到<a href="/drupal3/drupal3/">Home</a> 作为输出'不解释标签'
请问,我该怎么办?
【问题讨论】:
-
使用
$sce.trustAsHtml(...)信任您编译的链接。 (另外你需要分配response.data) -
阅读
ngSanitizedocs.angularjs.org/api/ngSanitize
标签: javascript html angularjs json