Я новичок в VueJS и использую библиотеку vue-chessboard для своего проекта.Но я так запутался в способе использования библиотеки, что вижу, что когда мы используем showThreats, мы можем использовать «: showThreats», но мы не используем «:» для «ориентации».Есть код vue-chessboard:
vue-chessboard
export default {
name: 'chessboard',
props: {
...,
showThreats: {
type: Boolean,
default: false,
},
onPromotion: {
type: Function,
default: () => 'q',
},
orientation: {
type: String,
default: 'white',
},
},
watch: {
fen: function (newFen) {
this.fen = newFen
this.loadPosition()
},
orientation: function (orientation) {
console.log('watch orientation________', orientation)
this.orientation = orientation
this.loadPosition()
},
showThreats: function (st) {
this.showThreats = st
if (this.showThreats) {
this.paintThreats()
}
},
},
methods: {...
}
}
, когда я использую эту библиотеку
<chessboard :orientation="black"/>
Тогда браузер заметит: vue.runtime.esm.js? 2b0e: 619 [Vue warn]: свойство или метод "black" не определены в экземпляре, но на них ссылаются во время рендеринга.Убедитесь, что это свойство является реактивным, либо в параметре данных, либо для компонентов на основе классов, инициализируя свойство.См .: https://vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties. И не произойдет, если я использую:
<chessboard orientation="black"/>
Но с showThreats документ дает следующее:
<chessboard :showThreats="true"/>
Я не могу понять, почему?Спасибо за помощь ^^