import Vue from 'vue' import store from '@/store' import { isArray, isString } from '@/utils/validate' import { errorLog } from '@/config' const needErrorLog = errorLog const checkNeed = () => { const env = process.env.NODE_ENV if (isString(needErrorLog)) { return env === needErrorLog } if (isArray(needErrorLog)) { return needErrorLog.includes(env) } return false } if (checkNeed()) { Vue.config.errorHandler = (err, vm, info) => { console.error('错误拦截:', err, vm, info) const url = window.location.href Vue.nextTick(() => { store.dispatch('errorLog/addErrorLog', { err, vm, info, url }) }) } }