Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rollup failed to resolve import "XXXXXX/node_modules/@arco-design/web-vue/es/collapse-item/style/css.js" #71

Closed
1 task done
gmars opened this issue Apr 30, 2022 · 39 comments
Labels
bug Something isn't working
Milestone

Comments

@gmars
Copy link

gmars commented Apr 30, 2022

Basic Info

  • Package Name And Version: arco-design-pro-vue@2.3.6
  • Framework version: 2.18.0
  • Browser: chrome101.0.4951.41
  • Reproduction Link: https://github.com/

What is expected?

使用了collapse-item打包时Rollup报错。手动引入样式也没有这个路径的。项目是按需加载

@arect
Copy link

arect commented May 2, 2022

同样遇到了这个问题。

@GSZS
Copy link

GSZS commented May 2, 2022

还有这个mport "XXXXXX/node_modules/@arco-design/web-vue/es/icon/style/css.js

@gmars
Copy link
Author

gmars commented May 2, 2022

你这个应该看看文档中好像有如果你引入了iconfont是因为iconfont不支持按需加载。

@Sanbolee
Copy link

Sanbolee commented May 3, 2022

一样,下面几个都有问题

  • @arco-design/web-vue/es/icon/style/css.js
  • @arco-design/web-vue/es/descriptions-item/style/css.js
  • @arco-design/web-vue/es/collapse-item/style/css.js
  • @arco-design/web-vue/es/image-preview-group/style/css.js

@superaotu
Copy link

以image-preview-group组件为例
在config/plugin/styleImport.ts中,往ignoreList中添加image-preview-group进行忽略就行了

@Sanbolee
Copy link

Sanbolee commented May 4, 2022

以image-preview-group组件为例 在config/plugin/styleImport.ts中,往ignoreList中添加image-preview-group进行忽略就行了

今天试过了,找到config/plugin/styleImport.ts,往replaceList中添加替换成它们的父组件可以,也按你说的忽略也可以,不过除了descriptions-item,其他都可以了,而且这个是默认就在ignoreList中的,至今还是没搞定

@Sanbolee
Copy link

Sanbolee commented May 4, 2022

对了,你们打包后css样式顺序会不会混乱,开发的时候样式正常,打包后就有问题了

@sHow8e
Copy link
Member

sHow8e commented May 5, 2022

@gmars hi 这个问题是按需加载打包产生的问题。可以选择升级一下依赖。或者在config/plugin/styleImport.ts中ignoreList里添加报错的对应的组件名即可。

@sHow8e
Copy link
Member

sHow8e commented May 5, 2022

对了,你们打包后css样式顺序会不会混乱,开发的时候样式正常,打包后就有问题了

@Sanbolee 这个问题可以新开一个issue。提供具体复现信息哈。

@Sanbolee
Copy link

Sanbolee commented May 5, 2022

@gmars hi 这个问题是按需加载打包产生的问题。可以选择升级一下依赖。或者在config/plugin/styleImport.ts中ignoreList里添加报错的对应的组件名即可。

版本"@arco-design/web-vue": "2.26.0","arco-design-pro-vue": "^2.3.6",config/plugin/styleImport.ts中ignoreList里已添加descriptions-item,其他的都可以,只有它不行

@sHow8e
Copy link
Member

sHow8e commented May 5, 2022

@Sanbolee 因为组件库这边确实做了一些调整。包括类型导出、命名调整以及增加了一下特性。目前的解决方法是,你根据打包的错误提示,把缺失的部分补充或者忽略就行。

@Sanbolee
Copy link

Sanbolee commented May 5, 2022

@Sanbolee 因为组件库这边确实做了一些调整。包括类型导出、命名调整以及增加了一下特性。目前的解决方法是,你根据打包的错误提示,把缺失的部分补充或者忽略就行。

我现在的做法是在配置build.rollupOptions.external把@arco-design/web-vue/es/descriptions-item/style/css.js加进去,然后打包好,在全局查找它把它删除😅

@sHow8e
Copy link
Member

sHow8e commented May 5, 2022

@Sanbolee 你这路走的有点绕了。不推荐这么搞哈。😓

@Sanbolee
Copy link

Sanbolee commented May 5, 2022

config/plugin/styleImport.ts中ignoreList里已添加descriptions-item

没办法啊,在config/plugin/styleImport.ts中ignoreList里已添加descriptions-item这项了,但是打包的时候还是忽略不了,其他的诸如:collapse-item、image-preview-group、icon都可以,就只有它不行,好奇怪😂,要是不在build.rollupOptions.external把@arco-design/web-vue/es/descriptions-item/style/css.js加进去,打包不成功😂,又要上线使用,只能这么搞了😂这么搞确实有点麻烦,本来脚本一键部署的,现在还得手工删一次

@sHow8e
Copy link
Member

sHow8e commented May 5, 2022

@Sanbolee descriptions-item 这一项我看了 确实有加。具体报错什么样的?解决方法的话,你试试把这一项放到replaceList里,'descriptions-item':'descriptions'

@Sanbolee
Copy link

Sanbolee commented May 5, 2022

@Sanbolee descriptions-item 这一项我看了 确实有加。具体报错什么样的?解决方法的话,你试试把这一项放到replaceList里,'descriptions-item':'descriptions'

单独在replaceList里加'descriptions-item':'descriptions'这个也试过了,单独在ignoreList里添加descriptions-item也试过,一起加也试过,都是报错
截屏2022-05-05 14 59 40

@sHow8e
Copy link
Member

sHow8e commented May 5, 2022

@Sanbolee ok,我先本地模拟跑跑看。有结果再告知哈。

@Sanbolee
Copy link

Sanbolee commented May 5, 2022

@Sanbolee ok,我先本地模拟跑跑看。有结果再告知哈。

嗯嗯,好的

@sHow8e
Copy link
Member

sHow8e commented May 5, 2022

@Sanbolee hi 还是按需加载的问题。你把unplugin-vue-components 这个包升级到最新就行了。

@Sanbolee
Copy link

Sanbolee commented May 5, 2022

@Sanbolee hi 还是按需加载的问题。你把unplugin-vue-components 这个包升级到最新就行了。

可以了,感谢🙏

@Paradox315
Copy link

对了,你们打包后css样式顺序会不会混乱,开发的时候样式正常,打包后就有问题了

我也遇到了这个问题,怎么解决啊

@Sanbolee
Copy link

Sanbolee commented May 8, 2022

对了,你们打包后css样式顺序会不会混乱,开发的时候样式正常,打包后就有问题了

我也遇到了这个问题,怎么解决啊

我的还没有解决

@Paradox315
Copy link

对了,你们打包后css样式顺序会不会混乱,开发的时候样式正常,打包后就有问题了

我也遇到了这个问题,怎么解决啊

我的还没有解
image
控制台报了这些错

@Sanbolee
Copy link

Sanbolee commented May 8, 2022

对了,你们打包后css样式顺序会不会混乱,开发的时候样式正常,打包后就有问题了

我也遇到了这个问题,怎么解决啊

我的还没有解
image
控制台报了这些错

你打包成功后直接双击打开index然后出现这个错误的吗?

@Paradox315
Copy link

对了,你们打包后css样式顺序会不会混乱,开发的时候样式正常,打包后就有问题了

我也遇到了这个问题,怎么解决啊

我的还没有解
image
控制台报了这些错

你打包成功后直接双击打开index然后出现这个错误的吗?

对的,而且路由可以跳转,只是跳转过去的页面部分CSS显示不正常

@sHow8e
Copy link
Member

sHow8e commented May 8, 2022

@Paradox315 @Sanbolee 打包后的样式错乱的问题可以新开一个issue。至于打包后的那部分报错大概率是你的部署环境的缘故。可能是权限或者是配置的问题。 我这边使用http-server简单启动后是能够进行页面访问且不报错。

@sHow8e sHow8e added the bug Something isn't working label May 10, 2022
@sHow8e sHow8e added this to the v2.4.1 milestone May 10, 2022
@sHow8e sHow8e closed this as completed May 10, 2022
@sHow8e sHow8e mentioned this issue May 23, 2022
1 task
@GreenHand-wt
Copy link

Snipaste_2022-07-24_20-18-23
这是为什么 在config/plugin/styleImport.ts中ignoreList的组件名中添加也没用 别的都没问题

@zemel1988
Copy link

我发现的原因:是因为使用npm命令更新了包。
解决过程:删除node_modules文件夹,然后还原package.json的内容,使用yarn install安装所有包,然后yarn run build打生产包就没有问题。
更新包:没有更新了,如果要更新尝试yarn upgrade

@deng-gl
Copy link

deng-gl commented Nov 2, 2022

这个问题要咋解决啊
Failed to resolve import "@arco-design/web-vue/es/s-e_-u-r-l/style/css.js" from "src\router\index.js". Does the file exist?

@dingfeipeng
Copy link

[vite]: Rollup failed to resolve import "/node_modules/@arco-design/web-vue/es/countdown/style/css.js" from "XXX.ts"同样遇到了

@yuandonghua
Copy link

@Sanbolee unplugin-vue-components 我用的最新版0.24.1 还是不行,我和你类似,只剩这一个解决不了Rollup failed to resolve import "@arco-design/web-vue/es/breadcrumb/style/css.js"

@GreenHand-wt
Copy link

GreenHand-wt commented Mar 27, 2023 via email

@BlueBiuBiu
Copy link

我发现的原因:是因为使用npm命令更新了包。 解决过程:删除node_modules文件夹,然后还原package.json的内容,使用yarn install安装所有包,然后yarn run build打生产包就没有问题。 更新包:没有更新了,如果要更新尝试yarn upgrade

使用该方式,已解决问题

@shaoerkuai
Copy link

shaoerkuai commented Apr 1, 2023

跟一个楼,如果使用了vite-plugin-style-import导入acro vue也出现了对应的问题,可以采取为resolveStyle补一段黑名单代码,把不存在的目录排除出去。可以这么干:

        createStyleImportPlugin({
            libs: [
                {
                    libraryName: '@arco-design/web-vue',
                    esModule: true,
                    resolveStyle: (name) => {
                        const exclude = ['tab-pane','row','col']
                        if (exclude.indexOf(name) > -1) return ''
                        return `@arco-design/web-vue/es/${name}/style/css.js`
                    },
                }
            ]
        }

@rlzrobot
Copy link

rlzrobot commented May 6, 2023

到现在还没有一个清晰的解决方案么?

@heiyhia
Copy link

heiyhia commented May 25, 2023

到现在还没有一个清晰的解决方案么?

config/plugin/styleImport.ts ignoreList 添加要忽略的组件就是了

@houlovegu
Copy link

1 2 3 我也用到同样的问题,但是最后检查代码发现是同事乱用标签导致的,因为官方都没有a-span标签,它却在页面里使用,导致官方组件库加载不到这个css.js文件所以一直打包有问题,最后我让他把a-span换成span就可以打包

@mingbai2006
Copy link

mingbai2006 commented Nov 29, 2024

我今天也遇到了,后来发现arco-desgin的动态引入css的插件vitePluginForArco,默认前缀是“a”,于是组件只要以“a”开头,都会被认为是arco-design组件(即使这个组件明明在本地目录存在)
image
所以解决方法就是给组件改名字。但是也希望官方能修改一下vitePluginForArco这个插件,先检查一下组件在本地是否已经存在,如果存在就不要再当做arco-design组件了

@Trojan0523
Copy link

cc @sHow8e 配合 rsbuild 的时候同样遇到相关的问题,想问下会有一个明确的解决方案么 , 是否可以提供一下使用非 vite构建工具的配置方案呢,感谢

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests