将指令作用域值绑定到HTML
Binding Directive Scope Value to HTML
我正在处理AngularJS指令。此指令具有一些自定义属性。我将使用这样的指令:
<my-directive show-links="false" />
show-links
是一个属性,如果开发人员没有专门设置它,我想默认为true
.directive('myDirective', function () {
return {
restrict:'E',
transclude: true,
scope: {
showLinks: '=?'
},
templateUrl: '/directives/my-directive.html',
controller: function ($scope) {
if (angular.isUndefined($scope.showLinks)) {
$scope.showLinks = true;
console.log('show links? ' + $scope.showLinks);
}
}
};
});
My-directive.HTML中的HTML如下所示:
<div><h1>Hello! {{showLinks}}</h1></div>
<div ng-if="showLinks == true"">
<a href='#'>do something</a>
</div>
当这个指令被评估时,我可以在控制台窗口中看到"show links?true"。然而,在屏幕上,我看不到"你好"一词旁边印着"真"。这就像HTML在showLinks进入作用域之前被渲染一样。我做错了什么?
我记得隔离范围有问题-解决方案是将隔离范围对象中的任何内容添加到指令HTML代码本身中,如下所示:
.directive('widgetRecentEntries', function(){
return {
restrict: "E",
replace: true,
scope: {
recents: "=recents"
},
templateUrl: "ngapp/js/tpl/widget-recent-entries.html"
};
})
指令HTML/模板:
<dl class="dl-horizontal flip-in" ng-repeat="item in recents" recents="recents">
<dt>
<a href="/{{item.seo_name}}.html">
<img src="{{item.logo_url}}" alt="" width="80">
</a>
</dt>
<dd>
<p><a href="/{{item.seo_name}}.html">{{item.name}}</a></p>
</dd>
</dl>
相关文章:
- 如何在tinymce编辑器中将点击事件绑定到html标签
- bootstrap没有通过erb与动态呈现的html绑定
- 挖空 HTML 绑定和字符串格式的 HTML 长度
- 挖空 JS html 绑定返回奇怪的代码而不是 html 字符串
- Knockout.js - “html”绑定中的“值”绑定
- KNOCKOUTJS HTML 绑定不起作用
- 如何从Knockout html绑定中删除换行符
- AngularJS使ng将html绑定到动态构建的对象名称
- AngularJS html绑定和Chome应用程序CSP
- angularjs中的单向HTML绑定
- Knockout.js动态HTML绑定返回[object object]
- 内部有另一个绑定的敲除html绑定
- 如何用空容器knockoutjs在html绑定中显示可观察对象
- 显示ko.可观察对象的HTML绑定
- 是否有可能强制knockout解析通过html绑定添加的新绑定?
- 将绑定应用到HTML绑定中生成的绑定中
- 监视html绑定内容的更改
- 执行& lt; script>在AngularJS中通过ng-bind-html绑定的标签
- Knockout JS如何绑定可观察的对象html绑定
- 在执行ng-repeat和执行在HTML中没有反映的操作时,将作用域从HTML绑定到指令