Vant中List组件immediate-check=false无效的问题

set-immediate-shim:简单的`setImmediate`填充 设置立即填充 简单设置 注意:此填充程序效率很低,请参阅 。 安装 $ npm install set-immediate-shim 用法 const setImmediateShim = require ( 'set-immediate-shim' ) ; setImmediateShim ( ( ) => { console . log ( '2' ) ; } ) ; console . log ( '1' ) ; //=> 1 //=> 2 有关的 返回在下一个事件循环中解决的setImmediate()考虑setImmediate() Tidelift帮助维护人员实现开源的可持续发展,同时为公司提供帮助有关其依赖项的安全性,维护和许可的保证。 立即下载

使用vant中的List组件时,会有这样的场景

初始化时想自己触发列表查询,而不想触发 List 组件自带的 load 方法,这时可以设置 immediate-check=false,如下代码,但是这种方式会在下面的场景中出现问题

 <van-list
     ref="vanlist"
     v-model="loading"
     :finished="finished"
     finished-text="已显示全部周报"
     :error.sync="error"
     error-text="请求失败,点击重新加载"
     :immediate-check="false"
     @load="getWorkList()"
 >
 data () {
    return {
      loading: false,
      error: false,
      finished: false
    };
  },
  created () {
    this.getWorkList();
  },
  methods:{
      async getWorkList () {
	     // 调接口查询
	     ....
	     // 加载状态结束
	     this.loading = false;
    }, 
  }

问题场景

  • 前提:A页面跳转到B页面,B为列表页,A页面内容超过一屏
  • 正常:上述代码,正常情况下,A跳转到B时,只执行 created 中的 getWorkList 方法,不触发 List 组件中的 getWorkList
  • 异常:但是由于A中内容超过一屏,页面滚动到底部后,再点击跳转到B时,就会将 created 和 List 组件的 getWorkList 都执行一次,导致列表数据重复展示

解决方法

解决方法十分简单

 data () {
    return {
      loading: false 修改为=> loading: true
    };
  },

immediate-check无效的原因分析

vant官网中给出的load触发条件很明确,也就是offset决定了触发与否
在这里插入图片描述
下面两张图是List组件源码,可以看出,immediate-check无法阻止滚动条的监听事件,滚动条与底部距离小于offset 时,load事件该触发还是会触发。

因此,immediate-check属性准确的说明应该是:

是否在初始化时立即执行滚动位置检查(滚动条与底部距离小于offset 时设置无效)

在这里插入图片描述
在这里插入图片描述

springcloud+nacos+gateway+oauth2小聚会 在微服务工程中,Nacos作为目前主流的注册中心和配置中心,Spring Cloud Gateway作为目前主流的网关,下面引入spring security+oauth2+jwt作为认证和授权中心,进行简单的聊聊。 阅读详情

相关推荐

二维卡尔曼滤波位置,速度融合

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 欢迎使用Ma...

Johnlee2019的博客 8440

Vant中List组件immediate-check=false无效

一,现象 已经设置List组件immediate-check=false,但是在进入页面的时候,还是会触发list组件的onLoad方法,发送第一次请求。 二,原因 假设首页是A,列表页是B。当A页面的内容超过一个屏幕,并且滚动条出现了(即滚动条向下滚动了一段距离。)然后再跳转列表页。就会直接触发List组件的onLoad方法。 这是因为第一个页面A和第二个页面B,所监听的滚动条都是html或者body上的滚动条。这就会干扰。 三,解决方案 把b页面的放置到自己的容器中,让他不产生全局的滚动条。即可: .

weixin_42349568的博客 1952

资源描述框架RDF及Turtle

文章目录1. RDF1.1 简介1.2 格式1.3 RDF的要求2. Turtle2.1 语法2.1.1 简单三元组2.1.2 Turtle中的命名空间2.1.3 Base URI2.1.4 谓语列表2.1.5 宾语列表2.1.6 空白节点(bNodes)2.1.7 数据类型2.1.8 Class membership2.1.9 空URI2.1.10 集合 1. RDF 1.1 简介 RDF(Resource Description Framework)语义网的标准数据模型,是一个用于描述 Web 上的资

doublewhite233的博客 2489

vant list immediate-check设置

每次更新列表,列表从底部弹出,不希望默认进入加载 首先设置了immediate-check为false 第一次更新列表没有问题,onload方法走了一次,但是第二次更新列表时,onload方法走了两次。。。,把loading 置为true 问题解决 onload方法正常走了一次。 ...

liuxiaochang_2011的博客 4507

Rasa Core开发指南

文章目录1. Rasa Core简介1.1 Rasa Core消息处理流程1.2 安装Rasa Core2. Dialogue模型训练2.1 Story样本数据2.2 Domain2.2.0 intents2.2.1 actions2.2.2 templates2.2.3 entities2.2.4 slots3 .训练和使用对话模型3.1 训练对话模型3.2 使用对话模型4. 搭建CustomA...

老蒋也疯狂 1万+

跟着团子学SAP CO:结果分析各评估方法计算逻辑概览 RA Valuation Method Overview KKA1/KKA2/KKA3

在大部分企业财务月结时,结果分析是必不可少的一环,通过结果分析系统可按照设定的评估方法及相关配置自动计算在制品(WIP)、主营业务成本、主营业务收入等等。 在结果分析中最重要的是根据业务需求选择合适的评估方法,目前SAP共提供15种评估方法,今天针对每一种方法计算逻辑及常用的业务场景进行介绍: (1)基于收入的评估方式(带利润实现) Revenue-Based Method with Profit Realization 第一种方式的计算是基于实际收入与计划收入的占比推算应结转的主营业务成本,如果当期累计的

Lucas1211的博客 1万+

van-list的:immediate-check属性设置之后,初次进入页面初始化数据就调用了onLoad方法

问题 van-list的:immediate-check属性设置不生效,导致进入页面就开始调用onLoad方法。 解决方法 初次加载数据之前,将loding设置为true

Keep on moving! 1841

【STM32学习】(29)STM32实现595驱动三个数码管(标准库和HAL库实现)

我选用的单片机型号为:STM32F103系列 74LS595是一个串转并行输出的芯片,它能为单片机节省很多的IO口,应用场景广泛。 现要求三个数码管动态显示,常规设计都是并行实现,需要8个IO数据口,然后还需要3个IO片选数码管接口,这样大大占用了IO口,导致连接的外设变少。因此我们引入74LS595芯片。电路设计如下: 只需要三个共阴极数码管与三个595芯片级联即可完成,通过RCLK,SCK,SER三个IO即可完成对数码管的动态控制并显示。电路焊接的实物图如下: 要求完成功能:实现数.

XiaoCaiDaYong的博客 8249

van-list :immediate-check=false失效

场景:先回去分类,根据分类获取列表,不需要进入列表就立即获取列表 解决办法:finished: true

周18的碎碎念 453

2025.06.06【Ribo-seq】|riboWaltz:P-site定位与三碱基周期性分析流程

同学们,大家好!今天我们要学习的是riboWaltz——一款专为Ribo-seq(核糖体足迹测序)数据设计的R包,主要用于P-site定位优化和三碱基周期性分析。P-site的准确定位是Ribo-seq下游所有翻译组学分析的基础,riboWaltz为我们提供了系统、可视化、易用的解决方案。P-site定位优化:自动识别不同长度RPF的最佳P-site偏移量。三碱基周期性分析:可视化RPF在CDS、UTR等区域的分布,评估数据质量。多样本/多条件支持:可同时处理多个样本,便于批量分析和对比。

1784

java技术专家 【DDD(领域驱动设计)思想解读及优秀实践 22】|泛化建模(上):领域知识更抽象怎么办?

java技术专家 【DDD(领域驱动设计)思想解读及优秀实践 22】|泛化建模(上):领域知识更抽象怎么办?

大壮 1161

Vant List组件immediate-check属性引发的重复加载问题及实战解决方案

本文深入分析了Vant List组件中immediate-check属性引发的重复加载问题,提供了包括调整offset参数、关闭immediate-check、修复CSS样式及完善状态管理在内的多种实战解决方案。针对高级场景如结合PullRefresh使用、处理空数据状态及性能优化也给出了详细指导,帮助开发者彻底解决这一常见问题。

pytorch8learner的博客 179

14 Prompt 的边界:什么时候必须用 RAG 或微调

Prompt 不是万能解法。本文用“改输入、补知识、改模型”这条主线,讲清什么时候继续优化 Prompt,什么时候必须引入 RAG、工具调用或微调,帮助你避免用重技术掩盖轻问题。

老于的笔记的专栏 205

vant-list @load加载问题

vant-list @load加载 不断请求接口问题个人解决方案 在vant-list 标签中配置offset属性,默认值300太大了(建议在30左右) ; 有配置van-pull-refresh使用的, 在vant-list 中 设置 :immediate-check="false" 设定一个变量,例如:isLoad,在每次请求方法时拦截多余的请求 async pageMore() { if (!this.isLoad) { th

c414457358的博客 2099

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

vant3 list 的坑

vant3 list 的坑

paidaboluo的博客 1649

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

vant当中van-list的使用

van-list里面的元素不能又float样式,否则会连续触发 load 事件 原代码 <template> <div class="about"> <van-tabs v-model="active" sticky @change="getTypeDate"> <van-tab v-for="(tab) in typeList" ...

柚子的 4万+

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

van-list immediate-check设置为false无效的问题

最近在使用van-list组件开发带有tab切换的项目,需求是tab是后端返回的数据,所以获取列表数据要在tab返回之后调用,所以进入页面时默认不触发van-list的load事件,官方文档说明:如下图所示: 组件配置如图所示: 但是我们这样设置完成之后,刚刚进入页面是没问题的,当我们切换tab时还是会触发load事件多次,因此我的解决方案是: 根据有无数据使用v-if来控制van-list是否展示,因为有时候页面初始化没有数据时vant-list也会触发一次 完美解决多次触发load事..

vscode_js的博客 1131

vant 中 list 组件初始化自动加载onLoad事件

vant 中 List 组件初始化后会加载一次onLoad事件,create生命周期函数中也需要加载一次,但是有些情况不需要初始化自动加载 1 2 3 4 5 6 7 <van-list v-model:loading="state.loading" :finished="state.finished" finished-text="没有更多了" @load="onLoad"...

a_dream12的博客 2425

vant-list和vant-tab组合使用触发load无限加载

tab中不同页的数据用同一个数组时,不要一次性请求好数据后放数组里面,然后tab切换的时候本地去判断处理,这样如果一个tab页中没有数据,或者数据没有铺满屏幕时,vant-list的load事件会一直去请求接口拿数据,知道屏幕铺满为止。不同的tab页的数据可以放一个数组中,但是每次切换不同tab都要去重新请求接口,拿到不同的值去赋予数组,不要把所有tab的数据拿到后本地处理!

qq_43378083的博客 3152

vue3中列表使用van-list数据调用了两次解决方法

onMounted不调用数据接口getData。请求数据时参数size写的条数多一些。因为请求数据过少,覆盖页面不足就会二次加载数据。设置:immediate-check="false"还是有问题。finished-text="没有更多了"

erduoduo520的专栏 1355

vant van-list无限加载了解决方法,vant的下拉加载和upload都有点坑(上传在钉钉H5多张照片会黑屏死掉)

1、:immediate-check="false" <van-list :immediate-check="immediate" v-model="loadingTask" :finished="finishedTask" :finished-text="task_list.length > 0 ? '没有更多了' : ''" @load="onLoadTask"

qq_23064501的博客 9219

vant中list加载异常问题

最近看list加载问题看了好久,也想了很多方法,最后自己又写了一个小demo,你们可以试一下 <template> <div class="home"> <van-tabs v-model="active" @change="change"> <van-tab title="标签 1"></van-tab> <van-tab title="标签 2"></van-tab> &l

qq_45208029的博客 1897

解决Vant List首次加载触发两次问题

摘要:该文探讨了前端分页加载中的两个常见问题及解决方案。针对首次加载两次的问题,建议设置immediate-check="false";对于列表只触发一次加载的问题,当总页数大于现有数据时需执行state.currentPage++并将finished.value设为false。同时指出设置overflow属性可能导致持续触发加载的问题,需要特别注意。这些解决方案能有效优化分页加载功能。

www_win的博客 355

vant的list 一直请求数据,van-list 的load方法不断连续的调用方法请求数据,诡异现象。完整解决方案

vant的list 一直请求数据,van-list 的load方法不断连续的调用方法请求数据,诡异现象。完整解决方案

橙-极纪元-JJYCheng 8156

vant问题记录

van-list初始化调用两次数据 原因是有可能在数据没回来的时候load就监测到数据低于高度,也发送了一次,等到数据回来时已经请求两次了. 解决方法: 1.不让它初始化检查滚动位置 :immediate-check='false' // 是否在初始化时立即执行滚动位置检查 2.offse默认300,给list个min-height ...

Hassan的小博客! 459

app开发使用vant组件之van-list

本篇给那些初试app开发的码农,大佬如果有建议,欢迎留言~~首先开发app会有多种方式,html+各种框架,vue-cli脚手架+各种依赖。脚手架的话,直接在vant官网教程里就有,vant官网地址Vant 3 - Mobile UI Components built on Vue 上边是两种安装依赖方法,可自行去官网查看,这里有个问题需要说一下,vue3有可能你在创建项目的时候规定用es6写法,这个时候会报is notdefind,然后查找之后发现是vant里边有es5的写法,这个时候用npm unins

Qiubaozhen的博客 2436
上一篇: VScode设置jsx语法自动补全
下一篇: 移动端呼出键盘时遮挡住输入框
My_Java_Life
博客等级 码龄11年 39粉丝 61原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值