我正在尝试实现一个文本编辑器,它可以使用Angular和TinyMCE进行html输入。 事情是 - 如果我使用ngModel进行绑定,那么当我在该模型变量中有mathml标签时,它们就会被剥离。是否可以完全忽略范围变量的清理?通过消毒,我的意思是 - https://docs.angularjs.org/api/ngSanitize/service/$sanitize
这就是我在做的事情:(供参考)
<script>
appControllers.controller('appController',['$scope','$sce',
function($scope, $sce){
$scope.tinymceOptions = {
height: '450px',
statusbar: true,
};
$scope.editorText = "<math xmlns:mml='http://www.w3.org/1998/Math/MathML' xmlns:m='http://schemas.openxmlformats.org/officeDocument/2006/math'><mi>H</mi><mi>C</mi><mo>≡</mo><mi>C</mi><mo>-</mo><mtable><mtr><mtd><mtable><mtr><mtd><mi>C</mi><msub><mrow><mi>H</mi></mrow><mrow><mn>3</mn></mrow></msub></mtd></mtr><mtr><mtd><mo>|</mo></mtd></mtr><mtr><mtd><mi>C</mi></mtd></mtr></mtable></mtd></mtr><mtr><mtd><mo>|</mo></mtd></mtr><mtr><mtd><mi>C</mi><msub><mrow><mi>H</mi></mrow><mrow><mn>3</mn></mrow></msub></mtd></mtr></mtable><mo>-</mo><msub><mrow><mi>C</mi><mi>H</mi></mrow><mrow><mn>3</mn></mrow></msub></math>";
$scope.deliberatelyTrustDangerousSnippet = function(){
return $sce.trustAsHtml($scope.editorText);
};
}]);
</script>
<textarea ui-tinymce="tinymceOptions" ng-model="editorText"></textarea>
<p>{{deliberatelyTrustDangerousSnippet()}}</p>
答案 0 :(得分:1)
我忘记了为什么我之前做过这个,但我碰到了类似的东西,这帮助了我。
app.config(function ( $sceProvider) {
$sceProvider.enabled(false);
});
请注意,这将适用于整个应用,因此在使用ng-bind-html