2014-12-01 2 views
2

У меня этот html в моей базе данных.ионный html привязки данных из базы данных

<p>my data here. <b>bold a bit</b></p> 

база данных с завода, как этот

.factory('DataSingle', function($http, $q){ 
    var sContent = function(idc){ 
    var deferred = $q.defer(); 
    $http.get('http://mydomainrestserver/'+idc) 
    .success(function(data, status, headers, config){ 
    deferred.resolve(data); 
    }); 
    return deferred.promise; 
    } 
return { sContent : sContent } 
}) 

это мой контроллер

.controller('SingleCtrl', function($scope, $http, DataSingle, $stateParams){ 
var single_id = $stateParams.ids; 
DataSingle.sContent(single_id).then(

function(single){ 
    $scope.singledata = single; 
    } 
}) 

опаляться данные из базы данных. он визуализируется как текст вместо рендеринга с абзацем и жирным шрифтом.

то, что я получаю просто тест с точки зрения

Title: Single page 
Data: <p>my data here. <b>bold a bit</b></p> 

данные успешно получены, но не должным образом оказывается на моем устройстве. вопрос заключается в том, как отобразить html из результата запроса в виде ионного контента?

ответ

4

на заводе

$scope.singledata = $sce.trustAsHtml(single); 

в HTML

<span ng-bind-html="singledata" class="htmlComment"></span> 
1

Очевидно, что все текстовое содержимое экранировано по соображениям безопасности, если вы не указали его как безопасное, используя службу $sce. Так что вы должны сделать, это:  

$scope.singledata = $sce.trustAsHtml(single); 

https://docs.angularjs.org/api/ng/service/$sce

Смежные вопросы