當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Vue.js app.config.optionMergeStrategies用法及代碼示例

用於定義自定義組件選項的合並策略的對象。

類型

interface AppConfig {
  optionMergeStrategies: Record<string, OptionMergeFunction>
}

type OptionMergeFunction = (to: unknown, from: unknown) => any

細節

一些插件/庫添加了對自定義組件選項的支持(通過注入全局混合)。當同一個選項需要來自多個來源(例如 mixins 或組件繼承)的 "merged" 時,這些選項可能需要特殊的合並邏輯。

合並策略函數可以通過使用選項名稱作為鍵在app.config.optionMergeStrategies 對象上分配自定義選項來注冊。

合並策略函數接收在父實例和子實例上定義的選項的值,分別作為第一個和第二個參數。

示例

const app = createApp({
  // option from self
  msg: 'Vue',
  // option from a mixin
  mixins: [
    {
      msg: 'Hello '
    }
  ],
  mounted() {
    // merged options exposed on this.$options
    console.log(this.$options.msg)
  }
})

// define a custom merge strategy for `msg`
app.config.optionMergeStrategies.msg = (parent, child) => {
  return (parent || '') + (child || '')
}

app.mount('#app')
// logs 'Hello Vue'

相關用法


注:本文由純淨天空篩選整理自vuejs.org大神的英文原創作品 app.config.optionMergeStrategies。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。