javascript – 在Aurelia中用模板本身替换自定义元素(而不是将其包含在自定义元素中)?
作者:互联网
假设我有一个自定义元素< foo-bar>< / foo-bar>
我不想将标记呈现到标记中,而是要替换它们,以便“foo-bar”元素不再是DOM的一部分.我相信Angular通过transclude属性来做到这一点.
在Aurelia有办法做到这一点吗?
解决方法:
您需要在组件上使用无容器装饰器.
@containerless()
– Causes the element’s view to be rendered without the custom element container wrapping it. This cannot be used in conjunction with@sync
or@useShadowDOM
. It also cannot be uses with surrogate behaviors.
所以你的组件应该是这样的:
import {customElement, bindable, containerless} from 'aurelia-framework';
@customElement('say-hello')
@containerless()
export class SayHello {
@bindable to;
speak(){
alert(`Hello ${this.to}!`);
}
}
标签:javascript,aurelia 来源: https://codeday.me/bug/20190516/1116373.html