<!--
 * @Author: 莫靓仔
 * @description: 文件描述
 * @Date: 2021-08-23 17:36:37
 * @LastEditors: 莫靓仔
 * @LastEditTime: 2021-09-14 19:21:02
-->

## 本地 run 项目

```
yarn dev
```

## 切换环境

-   切换到开发环境

```
npm run set-d
```

-   切换到测试环境

```
npm run set-t
```

-   切换到预发布环境

```
npm run set-y
```

-   切换到正式环境（应该没啥用）

```
npm run set-p
```

## 发布

-   开发环境发布

```
npm run bd
```

-   测试环境发布

```
npm run bt
```

-   预发布环境发布

```
npm run by
```

## 打包

-   由于引入打包之前项目已经存在，用 webpack 配置比较坎坷，遂采用 gulp 简单打包一下，配置都在 gulpfile.js 中
-   默认生产 dist 目录，目录结构如下

```
dist
└─ bi
   ├─ index.html
   ├─ ...
```

## 压缩

-   Mac 的压缩使用的是 compressing 插件，该插件支持 tar 和 gzip 格式，可以组合压缩成 Linux 系统的 tar.gz 格式。
-   windows 的压缩使用 zip 格式（compressing 插件的压缩在 windows 解压之后会带一串路径在前边），公司的服务器安装了 zip 插件，可以使用 zip 格式的压缩包，压缩的过程在 config/zip.js，压缩的目录是 dist/bi。

## 关于 request 文件

-   现在项目使用的 axios 实例是由 browserify 编译 request.js 文件出来的，编译之后的文件名是 request_browserify.js
-   由于需要使用 require 引入环境配置（如果 api 地址），浏览器不支持 require 的写法，所以需要由 browserify 编译。
-   另外，问了兼容 browserify 的编译，需要在编译 request 之前加入如下代码。现已处理，无需再修改。

```
if(!window.request) {
    window.request = request
}
```

## 关于本地直连服务器

请查看语雀文档
