精易论坛

标题: 有懂uniapp的吗,遇到个棘手问题 [打印本页]

作者: 两只老虎    时间: 17 小时前
标题: 有懂uniapp的吗,遇到个棘手问题
情况是这样的,我通过post命令,获取我后台一个json数组,并且成功将数组赋值到对应的data对象中,如下图(通过console.log()将赋值后的data对象输出,是有数据的)

然后问题来了,我在view中,使用 v-if="网络平台人qi.length>0" 的方式,来控制元素是否显示,结果发现,根本无法显示,使用  v-if="网路平台人qi.length===0" 反而会显示,也就是元素识别到数组成员为0个。但是console.log输出的却是3个数组,有没有懂的

作者: jieqi    时间: 17 小时前
不应该是 v-if="this.网络平台人qi.length>0"
作者: laihobglei    时间: 14 小时前
使用 this.$set或者[...]

this.网络平台人qi = [...数据1.hotlist];

或者

this.$set(this, '网络平台人qi', [...数据1.hotlist]);
作者: designer    时间: 11 小时前
我这边解决是前面标签使用个空图标或者空标签
<view v-if="网络平台人qi.length<1">空</view>
<view v-else>有数据</view>

或者你试试v-show也得,跟v-if一样用法,不过它只是不让标签显示而且,实际上还在
作者: designer    时间: 11 小时前
designer 发表于 2025-7-4 08:27
我这边解决是前面标签使用个空图标或者空标签

有数据

网络平台人qi 这个变量在页面初始化时初始化一下数组, 网络平台人qi: []
作者: 流云沙海    时间: 11 小时前
网路平台人qi这个变量丢失了响应式,所以后面你赋值了,实际页面已经不会自动响应了,如果想保持网路平台人qi的响应式,你需要用数组的6种方法来操作数组,不能直接给他赋值这种,百du vue操作数据的方法,或者使用$set改变也可以
作者: 人杰啊    时间: 8 小时前
嗯想回答发现大佬们也都是大佬  3楼 6楼 就是正确答案
作者: 没事瞎琢磨    时间: 8 小时前
加一个字段 把数组数赋值给字段  在判断字段
作者: 两只老虎    时间: 5 小时前
流云沙海 发表于 2025-7-4 08:29
网路平台人qi这个变量丢失了响应式,所以后面你赋值了,实际页面已经不会自动响应了,如果想保持网路平台人 ...

你们的回答都很正确,但并不是我遇到的问题,因为这些方法我也尝试过了。最终问题找到了,中文变量的问题.....  我把网络平台人qi改成纯英文,问题迎刃而解.....真服了
作者: 两只老虎    时间: 5 小时前
laihobglei 发表于 2025-7-4 06:04
使用 this.$set或者[...]

this.网络平台人qi = [...数据1.hotlist];

你们的回答都很正确,但并不是我遇到的问题,因为这些方法我也尝试过了。最终问题找到了,中文变量的问题.....  我把网络平台人qi改成纯英文,问题迎刃而解.....真服了




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4