Я новичок в Angular, и я делаю приложение с ионным. Я не могу показать HTML из JSON на мой взгляд. Я искал предыдущие вопросы, но все еще не работает. Код html написан как текст.
Мой код
HTML
<div ng-bind-html="bindHTML"></div>
Json
"usuarios": [
{
"nombre": "Name 1",
"description":"<p>Some HTML</p><p>More HTML</p>",
"id": 0
},
{
"nombre": "Name 2",
"description":"<p>Some HTML</p><p>More HTML</p>",
"id": 1
}
]
контроллер
.controller('UserCtrl', ['$scope', '$http', '$state', function($scope, $http, $state) {
$http.get('js/data.json')
.success(function(data){
$scope.data = data.usuarios[$state.params.id];
$scope.bindHTML = $sce.trustAsHtml(data.description);
});
}])
Благодарю.
Я реализовал плункер, чтобы проиллюстрировать, как это работает. Единственное, что я не включил, это то, что вы делаете.
контроллер
app.controller('MainCtrl', function($scope, $http, $sce) {
$http.get('data.json').success(function(data){
$scope.data = $sce.trustAsHtml(data.usuarios[0].descripcion);
});
});
Посмотреть
<body ng-app="plunker" ng-controller="MainCtrl">
<p ng-bind-html="data"></p>
</body>
Я не уверен, почему ваш не будет работать, если вы попробуете, что было предложено в потоке, который был помечен как дубликат. Это оставило бы меня поверить, что это имеет какое-то отношение к зависимости от $ state, но трудно сказать, не видя вашего полного приложения.
<!-- ionic/angularjs js --> <script src="https://cdnjs.cloudflare.com/ajax/libs/ionic/1.3.0/js/ionic.bundle.js"></script> <!-- your app's js --> <script src="lib/script.js"></script>