Для получения значения и отслеживания изменений у заинжекченного boolean во Vue.js необходимо использовать Reactive Property или Watcher.
Reactive Property (Реактивное свойство):
Vue.js позволяет создавать реактивные свойства с помощью метода reactive()
. Чтобы получить значение заинжекченного boolean, вы можете создать реактивное свойство и получать его значение с помощью синтаксиса myBoolean.value
. Помимо этого, Vue.js автоматически будет отслеживать изменения этого значения и обновлять все зависимости.
Пример:
import { reactive, inject } from 'vue' export default { setup() { const myBoolean = inject('myBoolean') // Получаем заинжекченное значение console.log(myBoolean.value) // Получаем текущее значение // При изменении значения будет срабатывать эта функция watch( () => myBoolean.value, // Отслеживаем изменения значения (newValue, oldValue) => { console.log('Значение изменено:', newValue, oldValue) } ) return { myBoolean } } }
Watcher (Наблюдатель):
Watcher предназначен для наблюдения за изменениями реактивных свойств. Он позволяет выполнять определенное действие при изменении значения. Для наблюдения за изменениями заинжекченного boolean используйте метод watch()
.
Пример:
import { watch, inject } from 'vue' export default { setup() { const myBoolean = inject('myBoolean') // Получаем заинжекченное значение console.log(myBoolean.value) // Получаем текущее значение // При изменении значения будет срабатывать эта функция watch( () => myBoolean.value, // Отслеживаем изменения значения (newValue, oldValue) => { console.log('Значение изменено:', newValue, oldValue) } ) return { myBoolean } } }
В обоих примерах используется метод inject()
для получения заинжекченного значения. Этот метод позволяет получить значение, переданное из родительского компонента в виде provide('myBoolean', myBooleanValue)
. Вы можете использовать любое имя вместо 'myBoolean'
, это просто ключ, по которому значение будет доступно во вложенном компоненте.
Надеюсь, это поможет вам получить значение и отслеживать его изменения у заинжекченного boolean во Vue.js.