[英]How to use plain javascript variables in vue 3 component?
我有一個帶有一些變量的javascript
文件,我想在這樣的vue
組件中使用它們:
<template>
<div> Hello {{ personData.name }} {{ personData.last }} </div>
<button @click="signOut"> Sign Out </button>
</template>
<script>
import { personData } from '<path>'
export default {
...
methods: {
signOut() {
personData.signed_in = false;
}
}
}
</script>
文件:
export var personData = {
name: '<name>',
last: '<last>',
signed_in: true,
}
它說personData
是未定義的,但顯然它不是,而且它被訪問但沒有在實例上定義。 我是Vue
的新手,所以我不知道自己做錯了什么。 同樣重要的是它們是全局的而不是組件的一部分
頁面上什么也沒有出現
問題是,您正在導入一個變量並僅在 Vue 實例中使用它。 VueJS 必須知道哪些是反應性數據,以便它可以根據其值更新 DOM。 因此,您進行以下更改以使其工作:
<template>
<div> Hello {{ personData.name }} {{ personData.last }} </div>
<button @click="signOut"> Sign Out </button>
</template>
<script>
import { personData } from './presonalData.js'
export default {
data () {
return {
personData //register as reactive data
}
},
methods: {
signOut() {
personData.signed_in = false;
}
}
}
</script>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.