使用命令行构建uni-app + vue3 + vite + vant并实现多环境打包

一. 构建

a. npm install -g @vue/cli
b. vue create -p dcloudio/uni-preset-vue my-project

c. 接下来会让选择uni-app模板类型


image.png

成功之后会显示下面的弹窗提示npm run serve


image.png

d. 搭建之后运行发现错误百度的方法都尝试了一遍还是不行错误截图如下


b0a169bcd7506fb46d640a7f9700d62.png
解决办法把vue/cli降级为4.0.5就可以了
由于没有及时的解决问题我选择了uni + vue3 + vite,接下来的配置多环境为配置的是uni + vue3 + vite

二. 配置多环境

  1. 在package.json文件中添加自己想要的命令在这里我添加了四个分别代表开发环境、测试环境、预发布环境和正式环境配置的变量要用--mode开头 例如我写的--mode dev


    image.png
  2. 配置相对应的环境配置我在src目录下面新建了config文件夹


    image.png

里面的主要内容是

export default {
  BASE_API: "https://", 也就是你不同的环境将要访问的不同的服务器
};

然后在env.js中根据package.json中配置的变量来访问config下面不同的文件

import dev from "./.env.dev.js";
import test from "./.env.test.js";
import pre from "./.env.pre.js";
import prod from "./.env.prod.js";
import demo from "./.env.demo.js";

const NODE_ENV = import.meta.env.MODE;

let ENV_VAR = null;
if (NODE_ENV === "dev") {
  ENV_VAR = dev;
} else if (NODE_ENV === "test") {
  ENV_VAR = test;
} else if (NODE_ENV === "pre") {
  ENV_VAR = pre;
} else if (NODE_ENV === "pro") {
  ENV_VAR = prod;
} else if (NODE_ENV === "demo") {
  ENV_VAR = demo;
}

export default ENV_VAR;

最后在request.js中引入

import ENV_CONFIG from "@/config/env";

三. 引入UI组件库(以vant为例)

  1. 安装vant
npm i vant@next -S
  1. 配置按需加载
npm i babel-plugin-import -D
  1. 在postcss.config.js 加入配置项


    image.png
[
      "import",
      {
        libraryName: "vant",
        libraryDirectory: "es",
        style: true,
      },
      "vant",
    ],
  1. 因为vant是用的less解析样式的所以要安装less
npm i less less-loader --save
  1. 这样vant UI组件库就引入进来了但是会发现没有样式,这是因为我们还没有将vant的样式文件引入进来
import "vant/lib/index.less";
  1. 由于是按需加载所以我们每用到一个UI组件我们就需要在项目中引入进来,正常情况下是要在main.js中引入的,我们将其抽离封装起来在src下新建vant.config.js文件然后我们用到什么就在里面添加什么,也可以在别的位置添加也可以起别的名字,接下里看一下vant.config.js文件里面的内容
import { Button, List, Cell, CellGroup } from "vant";

export function vant(app) {
  app.use(Button);
  app.use(List);
  app.use(Cell);
  app.use(CellGroup);
}

然后在main.ts中引入即可


image.png
import { vant } from "./vant.config.js";
vant(app);

这样就成功的把vant UI组件库引入到我们的项目中了 接下来就可以愉快的玩耍了

四. 使用alias配置别名(方便引用文件)

找到vite.config.js文件加入以下需要配置的信息

  resolve: {
    alias: {
      "@/": resolve(__dirname, "src"),
      "@/api": resolve(__dirname, "src/api"),
      "@/config": resolve(__dirname, "src/config"),
      "@/static": resolve(__dirname, "src/static"),
      "@/utils": resolve(__dirname, "src/utils"),
    },
  },

五·. 配置打包路径和项目启动自动打开浏览器

找到vite.config.js文件加入以下需要配置的信息

  base: "./", // 打包路径
  server: {
    open: true, // 启动项目自动弹出浏览器
    port: 8080, // 启动端口
  },
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,015评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,262评论 1 292
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,727评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,986评论 0 205
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,363评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,610评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,871评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,582评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,297评论 1 242
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,551评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,053评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,385评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,035评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,079评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,841评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,648评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,550评论 2 270

推荐阅读更多精彩内容