Использование модулей DexExtreme, вызывающих ошибки ссылок

#javascript #ecmascript-6 #es6-modules #devextreme

#javascript #ecmascript-6 #es6-модули #devextreme

Вопрос:

Я пытаюсь использовать модули dx:

 require("devextreme/ui/button");

const em = {
    init: () => {
        $("#button").dxButton({
            text: "Click me",
            onClick: function() {
                alert("The Button was clicked");
            }
        });
    }
};

export default em;
  

Но я получаю ошибку:

Неперехваченная ошибка типа: $(…).dxButton не является функцией

У меня также есть два отдельных файла пакета. Вызываемый vendor.js:

 // Vendor
require("expose-loader?$!jquery");
require("lodash");
require("expose-loader?moment!moment");
require("expose-loader?pnp!@pnp/pnpjs");
require("jszip");
  

Еще один для моего приложения (app.js ).

Я импортирую dev extreme в этом app.js сверток.

Возможно ли, что, поскольку jquery не входит в тот же пакет, devextreme не распознает его?

Комментарии:

1. Я никогда не видел, чтобы devextreme использовался в качестве модуля ES6. По такому вопросу, я думаю, вам следует обратиться непосредственно в их службу поддержки или, в конечном итоге, в раздел их проблем на github: github.com/DevExpress/DevExtreme/issues . Вероятно, jQuery не распознается, хотя я бы лично рекомендовал вам, если вы не вынуждены работать таким образом, следовать приведенным здесь рекомендациям: js.devexpress.com/Documentation/Guide/Common /… или найдите аналогичный пример здесь: github.com/DevExpress/DevExtreme-examples

Ответ №1:

Я забыл добавить:

 require("devextreme/integration/jquery");