我们正在使用 Vaadin Fusion,暂时停留在版本 19。在此版本中,无法添加本身依赖于 Vaadin 组件的 NPM 依赖项。
例如,如果我有这样的应用程序package.json
:
{
"dependencies": {
"my-beautiful-button": "0.0.1",
"@polymer/iron-icon": "3.0.1",
"@polymer/iron-list": "3.1.0",
"@polymer/polymer": "3.2.0",
"@vaadin/flow-frontend": "./target/flow-frontend",
"@vaadin/form": "./target/flow-frontend/form",
"@vaadin/router": "1.7.2",
...
并且my-beautiful-button
有一个package.json
这样的
{
"dependencies": {
"vaadin/vaadin-button": "2.4.0",
...
该应用程序可以正常编译并从 Spring-boot 和 webpack-dev-server 启动,但在浏览器控制台中会抛出类似这样的异常:
Failed to execute 'define' on 'CustomElementRegistry': the name "vaadin-lumo-styles" has already been used with this registry
这可以通过基于 Vaadin 版本 20.0.5 的应用程序重现。现在在 Vaadin 20.0.6 中,这个问题得到了修复,“my-beautiful-button”在浏览器中可以正常显示。但在我的一生中,我似乎无法找出导致 Vaadin 代码库变化的原因。
我可以做些什么来在 20.0.6 之前的 Vaadin 版本中实现这种行为吗?