2021-06-11

今天在使用uniapp做一个需要实现联动的选择提,一个题目两个选项,当你选择这个多少分,另一个就是多少分,满分五分这道题,每个选项可以占一定分值,可以为0

但是在使用uniapp实现时发现,不像html5页面使用vue那样简单,首先是 el-slider  没有办法使用,然后就去官网查看了一下uniapp的滑块(slider)如何使用

附上地址 :https://uniapp.dcloud.io/component/slider

明确显示了有改变事件 且并不用传参

<view>

       <slider value="50" @change="sliderChange" activeColor="#FFCC33" backgroundColor="#000000" block-color="#8A6DE9" block-size="20" />

</view>

sliderChange(e) { console.log('value 发生变化:' + e.detail.value) }

已经定义好了,只需要写@change="事件名"

事件接参,传过来的参数中会带有当前的变化后的值  e.detail.value

但是,后边一个更恶心的东西出现了,v-model的变量无论我怎么写它都不会发生改变,后来多方查看,确实我的变量发生改变,但是v-model绑定的变量发生改变,但是页面显示的值未发生改变,后来多方百度,,多方考证,发现有的说是因为页面的变量绑定的太深所以页面需要重新赋值一次,虽然不是很懂,但是拿过来使用,还是顺利的改变了当前页面的值     // 运用 this.$forceUpdate() 强制刷新

最后一个问题,我的赋值是分数,所以当我赋值的时候一直报未找到的下标0,1,2,于是决定去看一下赋值的函数都可以使用哪些参数

$this.$set(this.item(变量),0/1/2(这里的这个参数是多维数组中的下表),{'变量名':'值'})

附上网址,有需要可以看一下:https://www.cnblogs.com/lanshu123/p/11636377.html

下面就是代码了,需要可以改吧改吧直接用

// 运用 this.$forceUpdate() 强制刷新
    this.$forceUpdate();
    // 如果更改的值为数字,需要为多个层次,不然会默认值变量里面搜索字段为某个数字的 ,仅测试数字
    // 如果字段为
    this.$set(this.value_1_s,'value_marks_1_A',this_value); 
    this.$set(this.value_1_s,'value_marks_1_B',another_value);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值