Skip to content

vue3版本使用vuex,store.state 值在视图上不更新 #18101

@Venusjason

Description

@Venusjason

请先确认

  • 我已搜索并确定这个提交不是重复的

Taro 版本

v4

相关平台

  • 所有平台
  • Web 端(H5)
  • 移动端(React-Native)
  • 鸿蒙(Harmony)
  • 鸿蒙容器(Harmony Hybrid)
  • ASCF 元服务
  • 快应用(QuickApp)
  • 所有小程序
  • 微信小程序
  • 企业微信小程序
  • 京东小程序
  • 百度小程序
  • 支付宝小程序
  • 支付宝 IOT 小程序
  • 头条小程序
  • QQ 小程序
  • 钉钉小程序
  • 飞书小程序
  • 快手小程序

小程序基础库版本

No response

使用框架

Vue3

问题描述

`

count: {{ count }}
<view class="button" @tap="onAdd">ADD

<script> import { computed, nextTick, ref, watchEffect, watch } from 'vue' import { useStore, } from 'vuex' export default { setup() { const store = useStore() const count = computed(() => store.state.count) const visible = ref(true) watch(count, (newVal, oldVal) => { // 可以获取新旧值 console.log(`Count changed from ${oldVal} to ${newVal}`) }) const onAdd = async () => { store.commit('increment') visible.value = false await nextTick() visible.value = true } return { count, onAdd, visible, } } } </script> <style> .title { font-size: 32px; } .button { border: 1px solid lightgray; padding: 5px 10px; } </style>

`
count 值在小程序上监听不到更新,视图也不更新

在H5上表现正常

期望:小程序与H5表现一致

taro-vue3.zip

复现链接

https://github.com/NervJS/taro/issues

复现步骤

下载附件代码

环境信息

Taro v4.0.9

贡献代码

Metadata

Metadata

Assignees

No one assigned

    Labels

    F-vue3Framework - Vue 3T-alipayTarget - 编译到支付宝小程序T-ddT-feishuT-jdTarget - 编译到京东小程序T-kwaiT-qqTarget - 编译到 QQ 小程序T-qyT-swanTarget - 编译到百度小程序T-ttTarget - 编译到字节跳动小程序T-weappTarget - 编译到微信小程序V-4Version - 4.xbugSomething isn't working

    Type

    No type

    Projects

    Status

    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions