javascript - 在 Angular 中使用 JavaScript 添加带有插值的标签

标签 javascript angularjs

我有一个测试例程,它创建一个 div 标签,将其附加到正文,然后将其 innerHTML 属性设置为:

<p>{{testVar}}</p>

全部使用 Javascript,如下所示:

var created = document.createElement('h1');

var elem = document.body.appendChild(created);
elem.innerHTML='<p>{{testVar}}</p>';

然后它会显示在页面上,双花括号等等。将此单个元素动态添加到我的页面以便识别插值的正确方法是什么?

最佳答案

您必须针对当前范围编译 HTML,您可以使用指令:

app.directive("myDynamicHtml", ["$compile", function($compile) {
    return {
        restrict: "A",
        link: function(scope, elem, attrs) {
            var compiledHtml = $compile("<h1><p>{{testVar}}</p></h1>")(scope);
            document.body.appendChild(compiledHtml);
        }
    }
}]);

关于javascript - 在 Angular 中使用 JavaScript 添加带有插值的标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25752698/

相关文章:

javascript - 在 'return' 中运行 'return throw new Error()' 语句

javascript - mCustomScrollbar 在 wrapper 上滚动但不在 ul 上滚动

angularjs - 在过滤器函数中注入(inject)依赖项

javascript - Bootstrap 数据幻灯片属性与 angularJS 冲突

javascript - 使用具有不同变量的一个函数

javascript - 使用存储在范围变量中的数据而不是进行 ajax 调用

javascript - Jasmine测试私有(private)回调函数

c# - 使用 C# 在用户控件中注册 javascript

javascript - mongoDB node.js findAndModify 麻烦

javascript - 当我使用 JQuery(event.preventDefault 方法)停止页面时,页面在按钮单击时刷新 - Asp.Net MVC