有一个mce textarea用于保存格式化文本。保存后,我想显示用户使用的确切格式。粗体和斜体等格式在没有文本修饰的情况下保持不变,并且可以正常工作。
当用户格式删除或加下划线时,问题就会出现。我发现了一个非常接近的问题AngularJS: Bind html string with custom style,我在我的控制器中将它注入后尝试使用trustAsHtml。
为了简化问题,输出文本如下:
(function(angular) {
'use strict';
angular.module('bindHtmlExample', ['ngSanitize'])
.controller('ExampleController', ['$scope', function($scope) {
$scope.myHTML =
'<span style="text-decoration: underline;">this does not work</span> ' +
'<u>this work</u> ';
}]);
})(window.angular);
当我使用trustAsHtml
时,根本没有显示任何数据。 PS。:我知道我注入正确:
我的控制器:
(function () {
angular
.module(myApp')
.controller('myController', myController);
myController.$inject = ['$sce', ...'];
function myController($sce, ...) {
var vm = this;
vm.promise = {};
vm.trustAsHtml = trustAsHtml;
...
function trustAsHtml(string) {
return $sce.trustAsHtml($sce.parseAsHtml(string));
};