首页 > 其他分享 >el-select懒加载

el-select懒加载

时间:2024-06-06 10:56:37浏览次数:9  
标签:el productParams pageNo productList item form productIds select 加载

注册selectLoadmore指令

 

 

 

loadMore() {       // 如果没有更多数据,则不请求       if (!this.hasMore) {         return;       }       // 如果intercept属性为true则不请求数据,       if (this.loadMore.intercept) {         return;       }       this.loadMore.intercept = true;       this.productParams.pageNo++;       this.getProductList();     },     // 查询产品     async getProductList() {       const { data: { items, pageNo }} = await productQuery(this.productParams);       this.loadMore.intercept = false;       this.loading = false;       this.hasMore = items.length >= 10;       this.productParams.pageNo = parseInt(pageNo);       // 判断当前获取的产品数据中是否存在当前选中的产品项,若存在则删除       const arr = [];       items.forEach(item => {         if (!this.form.productIds.includes(item.productId) && !this.productList.find(p => p.productId === item.productId)) {           arr.push(item);         }       });       this.productList = this.productList.concat(arr);     },     handleSearch(keyword) {       this.loading = true;       this.productParams.pageNo = 1;       this.productParams.productNameFuzzy = keyword;       this.productList = [];       this.getProductList();     },     async getSelectProduct(productIds) {       const productParams = {         pageNo: 1,         pageSize: 1000,         productIds: productIds       };       // 查询当前选中的产品的下拉选项       const { data: { items }} = await productQuery(productParams);       return items;     },     // 选中产品下拉框     async focusProduct() {       // 清除上一次远程搜索的产品列表,并查询当前选中的产品的下拉选项       if (this.productParams.productNameFuzzy && this.form.productIds.length) {         const data = await this.getSelectProduct(this.form.productIds.join(','));         this.productList = data;       }       // 没有数据时,自动请求第一页的数据       if (!this.form.productIds.length || this.productList.length <= this.form.productIds.length) {         this.productParams.productNameFuzzy = '';         this.productParams.pageNo = 1;         // 判断有选中产品时,只保留当前选中的产品数据         const arr = [];         this.productList.forEach(item => {           if (this.form.productIds.includes(item.productId)) {             arr.push(item);           }         });         this.productList = arr;         // 未选中时清空下拉选项         if (!this.form.productIds.length) {           this.productList = [];         }         this.getProductList();       }     },     // 删除选中时,如果请求了关键字,则清除关键字再请求第一页的数据     clearProduct() {       if (this.productParams.productNameFuzzy) {         this.productParams.pageNo = 1;         this.productParams.productNameFuzzy = '';         this.productList = [];         this.getProductList();       }     },

标签:el,productParams,pageNo,productList,item,form,productIds,select,加载
From: https://www.cnblogs.com/wxy84/p/18234693

相关文章

  • 机器学习策略篇:详解如何改善你的模型的表现(Improving your model performance)
    如何改善模型的表现学过正交化,如何设立开发集和测试集,用人类水平错误率来估计贝叶斯错误率以及如何估计可避免偏差和方差。现在把它们全部组合起来写成一套指导方针,如何提高学习算法性能的指导方针。所以想要让一个监督学习算法达到实用,基本上希望或者假设可以完成两件事情。首......
  • 界面控件Telerik UI for WPF中文教程 - 用RadSvgImage升级应用程序UI
    TelerikUIforWPF拥有超过100个控件来创建美观、高性能的桌面应用程序,同时还能快速构建企业级办公WPF应用程序。UIforWPF支持MVVM、触摸等,创建的应用程序可靠且结构良好,非常容易维护,其直观的API将无缝地集成VisualStudio工具箱中。TelerikUIforWPF中的RadSvgImage组件使......
  • sentinel
    sentinel1.Sentinel简介随着微服务的流行,服务和服务之间的稳定性变得越来越重要。Sentinel以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。1、sentinel的特征丰富的应用场景:Sentinel承接了阿里巴巴近10年的双十一大促流量的核心场景,例......
  • SemanticKernel:添加插件
    SemanticKernel介绍SemanticKernel是一个SDK,它将OpenAI、AzureOpenAI和HuggingFace等大型语言模型(LLMs)与C#、Python和Java等传统编程语言集成在一起。SemanticKernel通过允许您定义插件来实现这一点,这些插件可以通过几行代码链接在一起。为什么需要添加插件?大语言模型虽然......
  • tkinter里使用button更新label图像
    哪怕tkinter是面向玩具的gui界面,想当然的功能也不至于这么迥异啊,而解决的方式是如此的疑无路,再柳暗花明。曾试着将adobereader的默认视图设置为100%,无奈受限于屏幕高度,不管怎样调整设置,都撼不了82.7%,这是真撞墙了,故从昨下午就想着在python上做一个默认100%显示pdf的图形界面,为什......
  • Xshell或其他命令行终端中,提示符(prompt)中的主机名太长,影响视觉体验或阅读方便性
    如果在Xshell或其他命令行终端中,你发现提示符(prompt)中的主机名太长,影响视觉体验或阅读方便性,你可以通过修改Linux系统的配置来缩短或美化这个提示符。这里有两种方法来解决这个问题:###1.暂时修改提示符你可以在当前终端会话中临时改变提示符,这不会影响其他用户或重启后的设置。......
  • CodeWars Shell Question
    CodeWarsShellQuestionClock#https://www.codewars.com/kata/55f9bca8ecaa9eac7100004ah=$1m=$2s=$3echo"(($h*60+$m)*60+$s)*1000"|bcEvenOrOdd#https://www.codewars.com/kata/53da3dbb4a5168369a0000feEvenOrOdd(){if(($1%2==0));then......
  • Excel 文件损坏了打不开怎么办?几种 Excel 文件修复方法帮助你
    当你想要打开电脑Excel文件的时候发现系统提示文件被损坏或者其他一些原因导致无法打开,这时候应该怎么办呢?别急下面为大家总结了Excel文件修复的一些方法。更改信任中心Excel软件具有内置的安全功能会限制有潜在风险的文件,当Excel认为某一个文件对你的电脑有危害的时......
  • 分布式搜索引擎ElasticSearch学习笔记
    一、Elasticsearch介绍什么是elasticsearch?一个开源的分布式搜索引擎,可以用来实现搜索、日志统计、分析、系统监控等功能什么是elasticstack(ELK)?是以elasticsearch为核心的技术栈,包括beats、Logstash、kibana、elasticsearch什么是Lucene?是Apache的开源搜索引擎类库,提......
  • 成员推理攻击(Membership Inference Attacks Against Machine Learning Models)通俗易懂
    成员推理攻击是一种面向AI模型的数据隐私窃取,攻击者以判断==数据是否来源于AI模型的训练集==为目标,本质上是对未知来源的数据进行==二分类==,给出成员数据或者非成员数据的判定。攻击者训练一个二分类器,该分类器将==目标分类器==预测的数据样本的置信度分数向量作为输入,预测该......