0

如何删除

类型“JQuery < HTMLElement>”上不存在属性“queryBuilder”

关于在 Angular 中集成 Jquery 查询生成器。

角.json:

"scripts": [
"node_modules/jquery/dist/jquery.min.js",
"node_modules/bootstrap/dist/js/bootstrap.min.js",
"node_modules/jQuery-QueryBuilder/dist/js/query-builder.standalone.min.js",
...]

app.componenet.ts

import * as $ from 'jquery';
import 'jQuery-QueryBuilder/dist/js/query-builder.standalone.js';
import 'jQuery-QueryBuilder/dist/js/query-builder.js';

...


private getQueryBuilder() {
$('#builder').queryBuilder({
    //plugins: ['bt-tooltip-errors'],
    filters: [{
        id: 'name',
        label: 'Name',
        type: 'string'
    }, {
        id: 'category',
        label: 'Category',
        type: 'integer',
        input: 'select',
        values: {
            1: 'Books',
            2: 'Movies',
            3: 'Music',
            4: 'Tools',
            5: 'Goodies',
            6: 'Clothes'
        },
        operators: ['equal', 'not_equal', 'in', 'not_in', 'is_null', 'is_not_null']
    }, {
        id: 'in_stock',
        label: 'In stock',
        type: 'integer',
        input: 'radio',
        values: {
            1: 'Yes',
            0: 'No'
        },
        operators: ['equal']
    }],
    rules: this.rules_basic
});

}

ngAfterViewInit() {
    this.getQueryBuilder();
}

我在这个(如何在 Angular 中使用 Jquery Query Builder)线程中做了一些事情,但它抛出错误并导致编译失败。有时应用程序也在运行时出现此错误。

4

2 回答 2

1

试试这个,它会工作的。

import 'jquery';
import 'jQuery-QueryBuilder/dist/js/query-builder.min.js';
import 'jQuery-QueryBuilder/dist/js/query-builder.standalone.min.js';

declare var $: any;
于 2018-09-24T08:52:13.600 回答
0

您的 queryBuilder 插件的路径错误

node_modules/jQuery-QueryBuilder/dist/js/query-builder.standalone.min.js

或者你没有安装 NPM。

于 2018-09-24T05:22:56.073 回答