angular - Angular:从组件中的指令调用方法
问题描述
我正在尝试从指令中调用方法。可以说我有指令 myDirective.ts
@Directive({
selector: '[something]',
})
export class myDirective implements OnInit {
....
public myMethod(){
console.log(it works)
}
....
}
和 component.ts (这是我发现的,但在 this.directive 上我得到错误对象可能为空)
@Component({
selector: '...',
templateUrl: '....html',
styleUrls: ['....css'],
})
export class MyComponent implements OnInit {
@ViewChild(myDirective) directive = null
ngOnInit() {
}
onClickFunction() {
return (
this.directive.myMethod();
);
}
}
如何在组件中调用此方法?
解决方案
就这样跑
@Component({
selector: '...',
templateUrl: '....html',
styleUrls: ['....css'],
})
export class MyComponent implements OnInit {
@ViewChild(myDirective) directive;
ngOnInit() {
}
onClickFunction() {
return (
this.directive?.myMethod()
);
}
}
在 tsconfig.json 添加
"strictPropertyInitialization":false,
推荐阅读
- spring - Envers 审计表不复制 created_at、modified_at 数据
- python - 删除目录中所有文件的相同列
- javascript - ActiveXObject Word (JavaScript) 使用特定打印机打印 Word 文档
- javascript - 谷歌脚本:如何在控制台中将我的输出粘贴到谷歌表格中?
- jquery - 如何将 NuGet 客户端包安装到 dot-Net Framework 项目
- c++ - 为 2D 矢量保留内存会导致 swig 中的分段错误
- python - pydebug如何调试python库
- python - For 循环从字典返回 0
- javascript - 有没有办法在 IE11 上模糊反应组件?
- mysql - 查找所有拥有红色、绿色和蓝色衬衫的用户