Taro 升级 2.x 最新版本
# Taro 升级 2.x 最新版本
# 环境
taro:v2.1.16
node:v10.16.3
taro@2.x 迁移升级文档 (opens new window)
# 版本升级
建议在升级前将 package.json 文件内容保存备份
在升级中,可能会出现 packcage.json 中依赖包丢失情况
# 升级 @taro/cli
# 有两种升级版本的方式 一种是全局升级,一种是只升级某个项目的,这里只升级单个项目内的 Taro 版本
# 单独升级项目内的 Taro 版本(npm 方式)
npm install --save-dev @tarojs/cli@2.2.15
只升级单个项目内的 Taro 版本,这样做的好处是全局的 Taro 版本还是原来的版本,多个项目间的依赖不冲突,其余项目依然可以用旧版本开发。 如果你的项目里没有安装 Taro CLI
# 升级项目依赖
# 进入项目目录 打开命令行
# npm 方式 升级项目 Taro 相关依赖
node ./node_modules/.bin/taro update project 2.2.15 (请修改为 Taro 2.x 最新版本)
# 安装新增依赖
Taro 2.0 新增了
@tarojs/mini-runner
作为小程序的编译依赖,所以你需要将它安装在你的项目
# 安装 @tarojs/mini-runner
npm install --save-dev @tarojs/mini-runner@2.2.15
升级安装到这基本就都升级完成了
2.2.x 以后新增了一些优化项,下面记录一些配置方法
# 配置项
# Js 代码压缩
Taro@2.x JS 代码压缩文档 (opens new window)
# 本次使用 uglifyjs
# npm i --D uglifyjs-webpack-plugin
npm i --D @tarojs/plugin-uglify
// config/index 文件中配置
const config = {
// 注册
plugins: ['@tarojs/plugin-uglify'],
// 开启 js 压缩
uglify: {
enable: true,
config: {
// 配置项同 https://github.com/mishoo/UglifyJS2#minify-options
},
},
}
# Css 样式压缩
Taro@2.x Css 样式压缩文档 (opens new window)
如果使用了 sass ,需安装
@tarojs/plugin-sass
# 安装 @tarojs/plugin-sass 插件
npm i --D @tarojs/plugin-sass
// config/index 文件中配置
const config = {
// 注册
plugins: ['@tarojs/plugin-sass'],
// 开启 css 压缩
csso: {
enable: true,
config: {
// 配置项同 https://github.com/css/csso#minifysource-options
},
},
}
# 分析打包体积
使用 webpack-bundle-analyzer 插件 (opens new window)
# 安装 analyzer
npm install webpack-bundle-analyzer -D
// config/index
const config = {
mini: {
// 配置 analyzer 开启打包
webpackChain(chain, webpack) {
chain.plugin('analyzer').use(require('webpack-bundle-analyzer').BundleAnalyzerPlugin, [])
},
},
}
# 微信小程序持续集成
小程序开发文档 命令行 V2 (opens new window)
开发者工具提供了命令行与 HTTP 服务两种接口供外部调用 开发者可以通过命令行或 HTTP 请求指示工具进行登录、预览、上传等操作 本次使用 命令行方式 执行自动构建提交
#!/bin/bash
# 确保脚本抛出遇到的错误
set -e
# 查看node 版本
node -v
# 查看npm 版本
npm -v
# 获取微信开发者工具-命令行工具位置(配置为自己的 微信开发者工具路径)
cli=/g/xxx/xxx/微信web开发者工具/cli.bat
# 设置项目路径 (配置为自己的 项目路径 加上打包后生成的目录如:dist)
project_path=/g/xxx/xxx/dist
# 设置版本号
version=3.3.6.8
# 打包构建
echo -e '\033[32m打包生成部署文件...\033[0m'
# 执行构建(可配置为自己的 构建命令)
npm run build:sit:weapp
# 获取git提交信息
echo -e '\033[32m获取Git提交信息...\033[0m'
# 获取最新一次的 git commit 信息
head_commit_info=`git log --pretty=format:“%s” "HEAD" -1`
# 获取最新一次的 git author 信息
head_commit_author=`git log --pretty=format:“%an” "HEAD" -1`
# 获取最新一次的 git 提交日期
head_commit_date=`git log --pretty=format:“%cd” "HEAD" -1`
# 打印查看
echo $head_commit_info
echo $head_commit_author
echo $head_commit_date
echo -e '\033[32m执行上传...\033[0m'
# 获取当前时间
# time=$(date "+%Y-%m-%d %H:%M:%S")
# 调用微信开发者工具命令行方式 执行上传
$cli upload --project $project_path -v $version -d $head_commit_info
# 调用微信开发者工具命令行方式 执行预览
# $cli preview --project /g/xiaoc1103/code/gitlab/wx-ci-test/dist