"vux": "0.0.106"
Все
<toast :show="toast.show">{{toast.msg}}</toast>
Поскольку он используется в качестве глобального компонента, его подкомпоненты напрямую используют односторонний поток данных vuex для запуска всплывающего окна, но всплывающее окно с тостами и предупреждениями являются двухсторонними, поэтому они продолжают сообщать предупреждение, а обсессивно-компульсивное расстройство вызывает дискомфорт. .
Итак, что вы предлагаете? TwoWay - это потому, что внутренняя работа компонента изменит представление, в противном случае статус будет ненормальным.
twoWay - это просто проверить, является ли это двусторонняя привязка, теперь нужно проверить предупреждение о времени
Поэтому я предлагаю отменить двустороннюю проверку привязки, но вы по-прежнему автоматически изменяете значение show внутри, так что, если вы используете двустороннюю внешнюю проверку, вы можете автоматически изменить значение.
Конечно, я здесь, чтобы контролировать ценность шоу извне.
Что вы думаете?
Разве это не просто проверка?
Конечно это просто проверка!
Вам не нужно писать двухсторонний, но он по-прежнему связан синхронизацией в компоненте, и он все еще может быть двусторонним.
Только что перешла на ВУЭ на месяц, дорога не глубокая, надеюсь посоветовать 😄
Это должна быть просто функция проверки привязки компонентов. Если вам не нужна двусторонняя привязка для показа Alert, вы можете изменить значение show только с помощью события on-hide
.
Да, оповещение уже есть. Toast, я установил setTimeout, чтобы изменить привязку показа. Конечно, лучше всего иметь on-hide.
Я также думаю, что тосты и предупреждения не очень совместимы с vuex. Лучше всего иметь скрытые события и поддерживать тот же интерфейс, что и предупреждения.
@JianleiZhang Будет реализовано в следующем выпуске.
Комбинация vuex + vux также обнаружила предупреждение, привязанное к twoWay, при использовании компонента Popup. Вначале тоже хотелось прислушиваться к событиям, когда вносятся изменения!Позже я нашел здесь новое решение : вычисляемые свойства
Вот простой пример
<template>
<popup :show.sync="showed">
<group>
<switch title="just switch" :value.sync="showed"></switch>
</group>
</popup>
</template>
<script>
export default {
vuex: {
getters: {
getShow
},
actions: {
updateShow
}
},
computed: {
showed: {
get: function () {
return this.getShow
},
set: function (val) {
this.updateShow(val)
}
}
}
}
</script>
По сравнению с событиями мониторинга, есть дополнительный уровень инкапсуляции атрибутов вычисления, но он также прощается, чтобы предупредить
@pzxbc Гениально: смайлик:
@pzxbc Я обнаружил, что отправка мутации для изменения значения gethow, а затем вычисление показанного атрибута передаст значение во внутреннее значение show всплывающего компонента для изменения состояния компонента. Вышеупомянутое - это то, что мне нужно, но я обнаружил, что следующий показанный атрибут вычисления вызовет функцию this.updateShow, привязанную к установке, потому что я использую console.log, чтобы найти, что mutaion вызывается дважды.
Мой подход:
set: function (val) {
if (val === false){
this.updateAlert(val)
}
}
Самый полезный комментарий
Комбинация vuex + vux также обнаружила предупреждение, привязанное к twoWay, при использовании компонента Popup. Вначале тоже хотелось прислушиваться к событиям, когда вносятся изменения!Позже я нашел здесь новое решение : вычисляемые свойства
Вот простой пример
По сравнению с событиями мониторинга, есть дополнительный уровень инкапсуляции атрибутов вычисления, но он также прощается, чтобы предупредить