Vue: 全局函数和变量

 

main.ts

import { createApp } from 'vue'
import App from './App.vue'


const app = createApp(App)

type Filter = {
  format: <T extends any>(str: T) => string
}

declare module '@vue/runtime-core' {
  export interface ComponentCustomProperties {
    $filters: Filter,
    $env: string
  }
}
app.config.globalProperties.$filters = {
  format<T>(str: T): string {
    return `globalProperties ${str}`
  }
}
app.config.globalProperties.$env = 'dev'

app.mount('#app')

 

App.vue

<template>
  <div>
    {{ $filters.format('zax') }}
  </div>
  <div>
    {{ $env }}
  </div>
</template>

<script lang="ts" setup>

</script>

 

posted @ 2022-03-26 21:30  ascertain  阅读(84)  评论(0编辑  收藏  举报