我在项目中导入了jquery查询构建器How to use Jquery Query Builder in Angular告诉。
ngOnInit() {
this.templateService.getTags(this.contentType)
.then(tags => {
this.tags = tags;
});
}
ngAfterViewInit() {
this.getQueryBuilder();
}
getQueryBuilder() {
let self = this;
if (self.builder) {
$(self.builder.nativeElement).queryBuilder({
plugins: ['bt-tooltip-errors','not-group'],
filters: [{
id: 'tag',
label: 'Tag',
type: 'string',
input: 'select',
values: {
1: 'Books',
2: 'Movies',
3: 'Music',
4: 'Tools',
5: 'Goodies',
6: 'Clothes'
},
operators: ['equal']
}],
rules: this.rules_basic
});
}
}
虽然它有效但角度生命周期钩子不起作用。 它总是首先来到getQueryBuilder()函数,通常首先执行ngOnInit(),然后执行gAfterViewInit(),并且自动完成不起作用。为什么?有人能帮助我吗?非常感谢。
答案 0 :(得分:0)
试试这个:
ngOnInit(){
this.templateService.getTags(this.contentType)
.then(tags => {
this.tags = tags;
this.getQueryBuilder();
});
}
现在,只有在来自templateService的响应之后,才会执行this.getQueryBuilder()