如何在vaadin 23/24中定义jQuery,以便我可以使用jQuery插件?

问题描述 投票:0回答:1
在Vaadin 14中,可以像这样集成jQuery插件:

@JsModule("./src/jquery-loader.js") @JsModule("./src/myplugin-loader.js")
在jquery-loader.js类似:

import * as $ from 'jquery'; window.jQuery = $; window.$ = $;
这将允许我在myplugin-loader.js中导入一个jQuery插件,例如:

import "my-plugin/dist/myplugin.min.js";
在插件的代码中,“ jQuery”全局变量可访问。

这不再与vaadin 23或24一起使用。我都得到了:

ReferenceError: jQuery is not defined

can't define property "myplugin": Object is not extensible
(后者插件试图将自己设置为jQuery对象的属性)
注意,在Vaadin 23中,我仍然可以在Vaadin开发模式下运行我的应用程序,该错误仅在生产模式下出现。而在Vaadin 24中,错误出现在开发和生产模式下。
所有这些都导致我的vaadin应用程序没有启动(加载进度栏永远不会消失)。根据定义全局JavaScript变量,从Vaadin 14到23的变化是什么?
    

Vaadin使用Vite进行前端构建,因此它与JQuery这样的旧书库不友好。有时,您确实想在整合取决于它的旧版JavaScript库时使用它。例如。我在使用旧的pivottable.js库创建

-opivottable

组件时就这样做了。然后,解决方案不是将其包括在捆绑包中,而是从资源中加载它。

e.g。如果有枢纽,我有这些
jquery jquery-plugins vaadin vaadin-flow
1个回答
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.