Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Angular 5-生命周期挂钩指令_Javascript_Jquery_Directive_Angular5 - Fatal编程技术网

Javascript Angular 5-生命周期挂钩指令

Javascript Angular 5-生命周期挂钩指令,javascript,jquery,directive,angular5,Javascript,Jquery,Directive,Angular5,我是新来的。 我已经为外部JS库创建了指令。 但在同一个指令中,我将值绑定到属性 我试图使用ngAfterViewInit来检测是否所有值都绑定到属性,然后调用jQuery插件 但我已经找到了仅用于组件的生命周期挂钩。我可以在指令中使用这些吗?这是个好选择吗 <div *ngFor="let item of easypiechartOptions" [option]="item" appEasyPieChart [attr.data-percent]="item.p

我是新来的。
我已经为外部JS库创建了指令。
但在同一个指令中,我将值绑定到属性

我试图使用
ngAfterViewInit
来检测是否所有值都绑定到属性,然后调用jQuery插件

但我已经找到了仅用于组件的生命周期挂钩。我可以在指令中使用这些吗?这是个好选择吗

<div *ngFor="let item of easypiechartOptions"
    [option]="item"
    appEasyPieChart
    [attr.data-percent]="item.percent">
</div>

如果我不使用
ngAfterViewInit
,那么当我调用jQuery插件时,这些值不会被绑定。
如果我使用它,当我调用jQuery插件时,属性值就准备好了

但我已经找到了仅用于组件的生命周期挂钩。我可以在指令中使用这些吗?这是个好选择吗

<div *ngFor="let item of easypiechartOptions"
    [option]="item"
    appEasyPieChart
    [attr.data-percent]="item.percent">
</div>
我们用于组件的钩子似乎也用于指令。 我们可以从文档中理解这个概念

(文件格式:)

指令具有相同的生命周期挂钩集,减去特定于组件内容和视图的挂钩

指令和组件实例有一个生命周期,Angular创建、更新和销毁它们。开发人员可以通过在Angular core库中实现一个或多个生命周期挂钩接口,利用生命周期中的关键时刻


有一个例子是在指令上使用熟悉的钩子,这有助于Ofig的答案,即指令生命周期钩子。将是:

  • 恩戈尼特
  • 检查过了吗
  • 恩戈德斯特罗

是的,您可以在指令中使用相同的钩子。那太好了。只需执行
实现AfterViewInit
并声明您的
ngAfterViewInit()
函数。