vue全局配置源码分析

213 阅读1分钟
//全局配置设置在Vue.config对象上
 silent:取消 Vue 所有的日志与警告。
 optionMergeStrategies:自定义选项合并策略
 devtools:配置是否允许 vue-devtools 检查代码。开发版本默认为 true,生产版本默认为    false。生产版本设为 true 可以启用检查。
 errorHandler:捕获错误的处理函数。
 warnHandler为 Vue 的运行时警告赋予一个自定义处理函数。
 ignoredElements:忽略在 Vue 之外的自定义元素
 keyCodes:给 v-on 自定义键位别名。
 performance:对组件初始化、编译、渲染和打补丁的性能追踪。
 productionTip:设置为 false 以阻止 vue 在启动时生成生产提示

源码位置:/Users/zhouliang/Desktop/我的电脑/vue/src/core/global-api/index.js

// 引入config配置项
import config from '../config'
//定义initGlobalAPI初始化函数
export function initGlobalAPI (Vue: GlobalAPI) {
  // 定义config的描述信息
  const configDef = {}
  configDef.get = () => config
  if (process.env.NODE_ENV !== 'production') {
    configDef.set = () => {
      warn(
        'Do not replace the Vue.config object, set individual fields instead.'
      )
    }
  }
  //设置响应式config,同时在开发环境定义set提示信息
  Object.defineProperty(Vue, 'config', configDef)
  ......
  ...省略代码
  ......
}