angular $ compile并将变量传递给指令

时间:2015-09-05 09:20:22

标签: angularjs

我有一个接受变量的指令......

scope: {
            tasks: '='
        }

我这样做......

compiled = $compile(template)(scope);
element.append(compiled); 

如何在指令上设置任务参数?

由于

1 个答案:

答案 0 :(得分:1)

首先,您的模板必须在其中包含一个带有指令的元素,例如

var template = '<div my-directive></div>';

其次,该元素还必须具有一个属性,其名称是在指令的隔离范围定义中指定的属性,其中camelCase被其他带有破折号的情况替换:

// If you used the simple syntax { tasks: '=' }
var template = '<div my-directive tasks="something"></div>';

// If you used the syntax { tasks: '=fancyName' }
var template = '<div my-directive fancy-name="something"></div>';

最后,编译后的模板$compile(template)必须使用其中包含scope属性的something进行评估!那应该是它,希望我没有忘记任何事情。