computed: {
gettoken() {
return this.$store.state.token;
}
}
- 发布:2021-12-10 21:11
- 更新:2024-05-22 22:16
- 阅读:1825
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: 10
HBuilderX类型: 正式
HBuilderX版本号: 3.2.16
手机系统: Android
手机系统版本号: Android 11
手机厂商: 小米
手机机型: 小米10至尊 miui12.5.21.11.3开发版
页面类型: nvue
vue版本: vue3
打包方式: 云端
项目创建方式: HBuilderX
示例代码:
操作步骤:
manifest.json设置为vue版本为2,运行到手机,首页点击修改按钮,页面gettoken的值会随着点击而改变。
manifest.json设置为vue版本为3,再次运行到手机,首页点击修改按钮,页面值不变,再去打印vuex中的值发现确实是一样变过了
manifest.json设置为vue版本为2,运行到手机,首页点击修改按钮,页面gettoken的值会随着点击而改变。
manifest.json设置为vue版本为3,再次运行到手机,首页点击修改按钮,页面值不变,再去打印vuex中的值发现确实是一样变过了
预期结果:
vue3下nvue页面可以正常获取改变后的值
vue3下nvue页面可以正常获取改变后的值
实际结果:
vue3下无法获取改变后的值,依然是初始值
vue3下无法获取改变后的值,依然是初始值
bug描述:
测试发现vue2下面可以正常获取,vue3下一直是初始值。
测试代码见附件,测试场景为 运行到手机
computed: {
gettoken() {
return this.$store.state.token;
}
}
最光阴 - 前端开发
vue3下nvue页面使用vuex时最好使用getApp().$store.state的方式,我之前使用组合式api时也出现vuex状态不更新的情况,发帖后有管理员这样指导我的,很有效
FullStack - 【插件开发】【专治疑难杂症】【ios上架、马甲包、白包、过审、已成功上架过几百个】【多款插件已上架:https://ext.dcloud.net.cn/publisher?id=22130】【非诚勿扰】QQ:543610866
计算属性没有调用
可以用一下方法:
<template>
<view class="content">
<image class="logo" src="/static/logo.png"></image>
<view class="text-area">
<text class="title">{{ title }}</text>
</view>
<button type="default" @click="submit()">修改</button>
<text>{{ token }}</text>
</view>
</template>
<script>
export default {
data() {
return {
title: 'Hello',
token:''
};
},
onLoad() {},
computed: {
gettoken() {
console.log("gettoken");
return this.$store.state.token;
}
},
methods: {
submit() {
this.$store.dispatch('login', { token: '登录了' }).then(res => {
console.log(res);
console.log(this.$store.state.token);
this.token = this.$store.state.token
this.$forceUpdate();
});
}
}
};
</script>
<style>
</style>