问题描述
我有以下模板,其中包含一个名为 *appUnless
的测试结构指令:
<h1 *appUnless>
<app-hello></app-hello>
<input type="text" value="hello" />
</h1>
在我的结构指令中,到目前为止我有这个:
import {
Directive,Input,TemplateRef,ViewContainerRef,} from "@angular/core";
@Directive({
selector: "[appUnless]",})
export class UnlessDirective {
constructor(
private templateRef: TemplateRef<any>,private viewContainer: ViewContainerRef
) {}
@input()
set appUnless(message: string) {
const embeddedViewRef = this.viewContainer.createEmbeddedView(
this.templateRef
);
}
}
如何从指令中获取对 input
元素的引用?我希望能够引用 input
与在其上放置模板引用声明没有什么不同,即,如果我要执行 <input #myInput>
。显然,由于我无法控制容器内放置的内容,因此无法将 #myInput
放入模板中。
此外,如何从该指令中获得对具有正确类型的 AppHelloComponent
(支持 app-hello
)的引用?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)