const app = Vue.createApp({}) app.config = {...}
errorHandler: 组件渲染方法执行期间及侦听器抛出的未捕获错误,可以获取到错误信息和应用实例
app.config.errorHandle = (err, vm, info) => { // err: // vm: // info: 是vue特定的错误信息,比如错误所在的生命周期钩子 }
warnHandler: 警告指定一个自定义处理函数,只有在开发环境生效,生产环境会被忽略
app.config.warnHandle = function(msg, vm, trace) => { // msg: 警告信息 // vm: 组件实例 // trace: 是组件的继承关系追踪 }
globalProperties: 向任何组件实例中添加可全局访问的属性
在vue2中: vue.prototype.$http = () => {}
在vue3中: app.config.globalproperties.$http = () => {}
isCustomElement: 用来识别Vue之外定义的自定义元素,如果组件符合此条件则不需要本地或全局注册,并且Vue不会抛出 Unknown custon element的警告
app.config.isCustomElement = tag => tag.startWith('icon-')
optionMergeStrategies: 自定义选项合并策略
const app = Vue.createApp({ custom: 'hello!' }) // 注意这里返回的先后顺序,他会影响混入中打印出的结果 写法一: app.config.optionMergeStrategies.custom = (toVal, fromVal) => fromVal || toVal 写法二: app.config.optionMergeStrategies.custom = (toVal, fromVal) => toVal || fromVal app.mixin({ custom: 'goodbye!', created() { console.log(this.$options.custom) // 写法一会打印出"hello", 写法二会打印出 "goodbye!" } })
performance: 在浏览器开发工具中的performance/timeline面板中启用对组件初始化、编译渲染和更新的性能追踪,但是只适用于performance.mark API的浏览器
app.config.performance = true