使用AngularJS实时创建指令

时间:2013-07-02 14:34:29

标签: javascript angularjs

假设我有一个类似于

的XML文档
<something>
  <something-else />
</something>

我想将其直接插入HTML文档中。关于<something>元素的外观有一些规则(例如,它们应为div宽度为100px且背景为黑色,并且在点击时应展开。 Angular指令似乎是处理此问题的好方法 - 只需制作一个something指令。唯一的问题是XML是从服务器加载的,所以我不能事先做出指令。我试过将指令创建插入到控制器中,但它(预期)不适用于这个简单的例子:

$scope.makeTheDirective = function () {
    module.directive('dir', function () {
        return {
            replace: true,
            template: '<div style="background:black;width:100px;height:100px;"></div>',
            link: function () {
                console.log('making the directive');
            }
        }
    });

    $(document.body).append($compile('<dir>This is a test</dir>'));
}

在文件中适当调用。如何在加载应用程序后创建Angular识别指令,以便我可以将$compile d HTML添加到DOM中?

0 个答案:

没有答案