在vue3中需要使用到全局属性或函数的场景,并且需要在setup中使用,而不是用vue2的语法,那么应该怎么做呢,这是官方给出的步骤:
这样可以拿到属性并进行逻辑处理,但是如何在setup中渲染到模板中进行展示呢?下面来分步骤进行清晰的实操:
1. 在main.ts中进行定义全局变量或函数
function sum(a: number, b: number) {
return a + b
}
app.config.globalProperties = {
msg: 'global hello',
sum: sum,
}
2. 在组件中进行使用
<script setup lang="ts">
import { ref } from 'vue';
import { getCurrentInstance } from 'vue';
const instance = getCurrentInstance();
let msg = ref("pre")
let sum_result = ref(0)
if (instance) {
const globalProperties = instance.appContext.config.globalProperties
msg = globalProperties.msg
let sum = globalProperties.sum
sum_result = sum(2, 5)
}
</script>
页面效果: