【发布时间】:2021-12-12 03:26:04
【问题描述】:
我正在创建一个小益智游戏来学习 Vue 3,但在尝试将值附加到子组件中的数组时遇到了问题。
这是父母:
<template>
<div class="home">
<Puzzle :guess="puzzleGuess" />
</div>
</template>
这是子组件“拼图”:
<template>
<div>
<div class="row">
<img :src="require(`@/assets/${imgPath}`)" alt="Puzzle image" class="puzzleImage" >
</div>
<div class="row puzzleIcon" :key="i" v-for="(char, i) in word">
<span v-if="hasGuessedChar(char)">{{char}}</span>
<span v-else>
<i class="large material-icons">remove</i>
</span>
</div>
</div>
</template>
<script>
export default {
name: 'Puzzle',
props: {
word: Array,
imgPath: String,
guess: Array,
},
methods: {
hasGuessedChar(char) {
if(char == '') return false;
if(this.guess.indexOf(char) > -1) return true;
return false;
}
}
}
</script>
基本上,每当在父组件中更新道具puzzleGuess 时,我想将一个字符推送到子组件的guess 数组属性。使用当前发布的代码,我只是继续覆盖 guess 变量而不是附加到它。
【问题讨论】:
标签: vue-component vuejs3 prop