最近手里有个大活,一个维护了三年的vue1.0项目,要升级到2.0,头疼了半个月终于是升上去了,接下来做个记录,记录下升级思路。
一、升级有四个大难点,n个小难点:
1、记住升级不要急,刚开始几天页面空白都是正常的,有报错就好,最怕效果不出还不报错,升级第一步:
"vue": "2.6.10",
"vue-loader": "12.0.0",
"vue-router": "^3.1.0",
先升级这三个,vuex2.0以上兼容1.0的所以暂时不着急升级,页面显示出来后再升级,这三个版本号亲测不冲突,装完新的依赖后页面会一片空白,控制台一直标红,这个时候莫慌,现在报错的主要原因是,vue-router的语法有了很大的变化和vue的语法变化所导致的,你可以淡定的打开vue 官方迁移文档找迁移工具 vue-migration-helper 帮你检测vue的语法变化,同时也告诉你怎么改,当然这个只能检测组件内部语法,建议从登陆页开始,先看到页面心里有点底再说。
2、看到登陆页面并且能登录后,咱们就先停一哈,还要吧vuex搞上去,这样vue主架构就升级完成了,vuex不多说看代码,语法变了思想没变:
vuex1.0的action:
import * as types from '../types';
import {
Api,
Util,
Opt
} from '@Facade';
export const fetchSummary = ({
dispatch
}) => {
Api.get(`/summary`).then(res => {
const json = res.json();
dispatch(types.SET_SUMMARY, json);
});
};
export const fetchAttackSummary = ({
dispatch,
state
}, callback) => <