RuiWu
RuiWu
  • 发布:2021-12-07 13:58
  • 更新:2022-08-11 16:29
  • 阅读:2152

希望能支持基于 @vue/cli@5 + vue@2 或 vite@2 + vue@2 开发

分类:uni-app

issue#3001

新功能描述

希望能支持基于 @vue/cli@5 + vue@2 或 vite@2 + vue@2 开发。

现状及问题

  • 升级平滑度问题:当前旧项目技术栈均为 @vue/cli@4 + vue@2,支持较为古老的 Android 和 iOS 版本,直接升级到 vite + vue@3 较难,但升级到 @vue/cli@5 + vue@2 或 vite@2 + vue@2 较为 平滑
  • 开发体验问题:@vue/cli@4 技术栈相对落后(webpack@4、postcss@7……),@vue/cli@5 和 vite@2 技术栈相对先进(webpack@5、postcss@8 等……),@vue/cli@5 和 vite@2 都可以直接使用 tailwindcss@2、stylelint@14、purgess@4、sass-loader@12 等,带来 更好的开发体验

尝试方案

  • 没有找到基于 vite@2 + vue@2 的 uni-app 示例。
  • 使用 @vue/cli@5 创建项目。
npm i -g @vue/cli@next  
vue create -p dcloudio/uni-preset-vue test

选择 默认模板,创建完毕后打开项目并运行到微信小程序,可以得到和下面类似的错误提示。应该是插件没有匹配 webpack@5 所致。

$ cross-env NODE_ENV=development UNI_PLATFORM=mp-weixin vue-cli-service uni-build --watch  
请注意运行模式下,因日志输出、sourcemap以及未压缩源码等原因,性能和包体积,均不及发行模式。若要正式发布,请点击发行菜单或使用cli发布命令进行发布  
小程序各家浏览器内核及自定义组件实现机制存在差异,可能存在样式布局兼容问题,参考:https://uniapp.dcloud.io/matter?id=mp  
 ERROR  Error: Cannot find module 'webpack/lib/RuleSet'  
        Require stack:  
        - /Documents/test/node_modules/@dcloudio/vue-cli-plugin-uni/lib/configure-webpack.js  
        - /Documents/test/node_modules/@dcloudio/vue-cli-plugin-uni/index.js  
        - /Documents/test/node_modules/@vue/cli-service/lib/Service.js  
        - /Documents/test/node_modules/@vue/cli-service/bin/vue-cli-service.js  
Error: Cannot find module 'webpack/lib/RuleSet'  
Require stack:  
- /Documents/test/node_modules/@dcloudio/vue-cli-plugin-uni/lib/configure-webpack.js  
- /Documents/test/node_modules/@dcloudio/vue-cli-plugin-uni/index.js  
- /Documents/test/node_modules/@vue/cli-service/lib/Service.js  
- /Documents/test/node_modules/@vue/cli-service/bin/vue-cli-service.js  
    at Function.Module._resolveFilename (node:internal/modules/cjs/loader:933:15)  
    at Function.Module._resolveFilename (/Documents/test/node_modules/module-alias/index.js:49:29)  
    at Function.Module._load (node:internal/modules/cjs/loader:778:27)  
    at Module.require (node:internal/modules/cjs/loader:1005:19)  
    at require (node:internal/modules/cjs/helpers:102:18)  
    at Object.<anonymous> (/Documents/test/node_modules/@dcloudio/vue-cli-plugin-uni/lib/configure-webpack.js:4:17)  
    at Module._compile (node:internal/modules/cjs/loader:1101:14)  
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1153:10)  
    at Module.load (node:internal/modules/cjs/loader:981:32)  
    at Function.Module._load (node:internal/modules/cjs/loader:822:12)  
error Command failed with exit code 1.
2021-12-07 13:58 负责人:无 分享
已邀请:
DCloud_UNI_GSQ

DCloud_UNI_GSQ

https://github.com/dcloudio/uni-app/issues/3723

该问题目前已经被锁定, 无法添加新回复