gpt4 book ai didi

javascript - 自定义指令可以用包含 ng-show 的模板替换它的元素吗?

转载 作者:行者123 更新时间:2023-11-30 12:57:10 24 4
gpt4 key购买 nike

我想构建一个简单的 hello像这样使用的指令:

<hello foo="bar"></hello>

如果foo属性等于“bar”,我想用 <div ng-show="true"></div>" 替换元素;否则,将其替换为 <div ng-show="false"></div>" .但是,我只想替换一个 hello元素,而不是嵌套在其中的任何子元素!

例如:

<hello foo="bar">
<h1>Hi everyone!</h1>
</hello>

将被替换为:

<div ng-show="true">
<h1>Hi everyone!</h1>
</div>

这甚至可以做到吗?

最佳答案

您可以通过使用嵌入来实现:

Javascript

app.directive('hello', function() {
return {
restrict: 'E',
transclude: true,
replace: true,
scope: { foo: '@' },
template: '<div ng-show="foo == \'bar\'" ng-transclude></div>',
};
});

HTML

<hello foo="bar">
<h1>Hi everyone!</h1>
</hello>

<hello foo="baz">
<h1>Hi everybody!</h1>
</hello>

工作 Plunker here .

关于javascript - 自定义指令可以用包含 ng-show 的模板替换它的元素吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18639761/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com