Javascript 我的自定义指令不起作用
这是我的密码: 我希望它生成一个div,在DB中的Javascript 我的自定义指令不起作用,javascript,html,angularjs,Javascript,Html,Angularjs,这是我的密码: 我希望它生成一个div,在DB中的scope.current.type后面有一个或,并在其中设置scope.current.content 但它不起作用,在我的页面上只显示 app.directive("contentDirective", function($compile) { return { restrict: 'E', replace: true, template: "<div class='new__c
scope.current.type
后面有一个
或
,并在其中设置scope.current.content
但它不起作用,在我的页面上只显示
app.directive("contentDirective", function($compile) {
return {
restrict: 'E',
replace: true,
template: "<div class='new__content__input new__content__input-text'></div>",
link: function(scope, element, attrs) {
if (scope.current.type === 'Text') {
var DOM = "<textarea>" + scope.current.content + "</textarea>";
element.append(node);
} else if (scope.current.type === 'Quote') {
var DOM = "<textarea>" + scope.current.content + "</textarea>";
element.append(node);
} else if (scope.current.type === 'List') {
var ul = "<ul>";
for (var i = 0; i < scope.current.content.length; i++) {
ul += "<li>" + scope.current.content[i] + "</li>";
}
ul += "</ul>";
element.append(ul);
}
}
};
});
app.directive(“contentDirective”),函数($compile){
返回{
限制:'E',
替换:正确,
模板:“”,
链接:函数(范围、元素、属性){
if(scope.current.type==='Text'){
var DOM=“”+scope.current.content+”;
元素。追加(节点);
}else if(scope.current.type=='Quote'){
var DOM=“”+scope.current.content+”;
元素。追加(节点);
}else if(scope.current.type=='List'){
var ul=“”;
对于(变量i=0;i”+范围.当前.内容[i]+“”;
}
ul+=“
”;
元素追加(ul);
}
}
};
});
和我的html:
<li ng-repeat="doc in who_u_r" ng-init=" current = doc " class="new__content__input__single clearfix">
<contentDirective></contentDirective>
<li>
非常感谢您帮助将本指令的角型外壳改为蛇型外壳,在这种情况下,名称必须使用破折号书写,每个破折号代表指令定义中的一个大写字母
<content-directive></content-directive>
它很有效,谢谢!你有时间解释吗?这很简单,Angular创建的指令在Javascript中是驼峰式的,因为你不能在名称中使用连字符。在HTML中,为了保持可读性,它们之间用空格隔开。所以Javascript中的myCustomDirective
将变成
非常感谢。看来我还有很多工作要做。