uniapp + uni-ui + vue3转cli

用HBuilder创建的项目,转成可以在vscode中打包、运行的项目。

本文不涉及ts,如有需要,请自行寻找其他需要适配内容。

1.创建新的 CLI 项目结构

复制代码
# 创建新的 CLI 项目
vue create -p dcloudio/uni-preset-vue my-cli-project
# 选择默认模板

2.代码迁移

复制代码
将下方文件及文件夹内容放到新项目的src目录下
- pages/                 → src/pages/
- static/               →  src/static/(若放到public/下,记得修改引入路径)
- App.vue               → src/App.vue
- main.js               → src/main.js
- manifest.json         → src/manifest.json
- pages.json            → src/pages.json
- uni.scss              → src/uni.scss

将index.html复制到根目录下,修改index.html中的引入
<script type="module" src="/src/main.js"></script>

3.修改package.json 配置(以下配置是基于h5可用的配置,若有其他小程序或应用位置,请自行修改,其他依赖自行添加)

复制代码
{
  "name": "my-cli-project",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "dev:h5": "cross-env NODE_ENV=development uni",
    "build:h5": "cross-env NODE_ENV=production uni build"
  },
  "dependencies": {
    "@dcloudio/uni-app": "3.0.0-4020420240722002",
    "@dcloudio/uni-app-harmony": "3.0.0-4020420240722002",
    "@dcloudio/uni-app-plus": "3.0.0-4020420240722002",
    "@dcloudio/uni-components": "3.0.0-4020420240722002",
    "@dcloudio/uni-h5": "3.0.0-4020420240722002",
    "@dcloudio/uni-mp-alipay": "3.0.0-4020420240722002",
    "@dcloudio/uni-mp-baidu": "3.0.0-4020420240722002",
    "@dcloudio/uni-mp-jd": "3.0.0-4020420240722002",
    "@dcloudio/uni-mp-kuaishou": "3.0.0-4020420240722002",
    "@dcloudio/uni-mp-lark": "3.0.0-4020420240722002",
    "@dcloudio/uni-mp-qq": "3.0.0-4020420240722002",
    "@dcloudio/uni-mp-toutiao": "3.0.0-4020420240722002",
    "@dcloudio/uni-mp-weixin": "3.0.0-4020420240722002",
    "@dcloudio/uni-mp-xhs": "3.0.0-4020420240722002",
    "@dcloudio/uni-quickapp-webview": "3.0.0-4020420240722002",
    "@dcloudio/uni-ui": "^1.5.11",
    "vue": "^3.4.21"
  },
  "devDependencies": {
    "@dcloudio/types": "^3.4.8",
    "@dcloudio/uni-automator": "3.0.0-4020420240722002",
    "@dcloudio/uni-cli-shared": "3.0.0-4020420240722002",
    "@dcloudio/uni-stacktracey": "3.0.0-4020420240722002",
    "@dcloudio/vite-plugin-uni": "3.0.0-4020420240722002",
    "@vue/runtime-core": "^3.4.21",
    "sass": "1.77.8",
    "sass-loader": "^8.0.2",
    "vite": "5.2.8",
    "vue-loader": "^16.0.0"
  }
}

4.新建/修改vite.config.js 配置

复制代码
import { defineConfig } from 'vite'
import uni from '@dcloudio/vite-plugin-uni'

import { resolve } from 'path'
export default defineConfig({
  plugins: [uni()],
  resolve: {
    alias: {
      '@': resolve(__dirname, 'src')
    }
  }
})

5.修改pages.json

复制代码
{
    "pages": [
        ...
    ],
	"easycom": {
	    "autoscan": true,
	    "custom": {
		    "^uni-(.*)": "@dcloudio/uni-ui/lib/uni-$1/uni-$1.vue"
	    }
    }
}
  1. 安装依赖

  2. 运行

相关推荐
2501_9151063216 小时前
HTTP 协议详解,HTTP 协议在真实运行环境中的表现差异
网络·网络协议·http·ios·小程序·uni-app·iphone
咸虾米_18 小时前
开发uniapp前端通用价格组件提交到DCloud插件市场
uni-app·商城·开发插件·dcloud插件市场·扩展组件
郑州光合科技余经理18 小时前
实战分享:如何构建东南亚高并发跑腿配送系统
java·开发语言·javascript·spring cloud·uni-app·c#·php
2501_9160074719 小时前
iOS与Android符号还原服务统一重构实践总结
android·ios·小程序·重构·uni-app·iphone·webview
嘿siri20 小时前
uniapp enter回车键不触发消息发送,已解决
前端·前端框架·uni-app·vue
00后程序员张21 小时前
fastlane 结合 appuploader 命令行实现跨平台上传发布 iOS App
android·ios·小程序·https·uni-app·iphone·webview
2501_9151063221 小时前
iOS 性能优化这件事,结合多工具分析运行期性能问题
android·ios·性能优化·小程序·uni-app·cocoa·iphone
嘿siri21 小时前
自定义app端、小程序端和H5等多端自定义键盘输入框,跟随系统键盘弹出和隐藏
javascript·小程序·uni-app·uniapp
游戏开发爱好者821 小时前
App Store 上架流程,结合多工具协作
android·ios·小程序·https·uni-app·iphone·webview
cesske21 小时前
如何在yii2的uniapp项目中处理提交重复问题?
uni-app·状态模式