【发布时间】:2014-10-28 14:13:16
【问题描述】:
假设我有这样的指令:
<my-directive>This is my entry!</my-directive>
如何将元素的内容绑定到指令的范围内?
myApp.directive('myDirective', function () {
return {
scope : {
entry : "" //what goes here to bind "This is my entry" to scope.entry?
},
restrict: "E",
template: "<textarea>{{entry}}</textarea>"
link: function (scope, elm, attr) {
}
};
});
【问题讨论】:
-
首先如何将内容添加到 html 中?通常是 $scope 定义了在视图中显示的内容,而不是周围的方式。
-
这个元素的内容是在服务器端添加的。角度模板是使用 PHP 应用程序生成的,因为在这种情况下内容不能以 RESTfully 的形式使用。我可以将内容添加为属性,但鉴于此指令的行为类似于
<textarea>,为了便于开发人员理解,我希望继续使用<textarea>。 -
我认为旧版本的 IE 不喜欢带有元素名称的指令,这就是首选属性或类的原因。不确定这是否是您用例的一部分,但值得考虑奶奶的 IE6。
标签: angularjs angular-directive