当前位置: 首页 > news >正文

旅游机票网站建设搜索引擎优化指南

旅游机票网站建设,搜索引擎优化指南,建个网站要花多少钱,关键词推广是什么偶然遇到一个问题&#xff0c;在 ElSelect 组件中设置 filterable 属性后&#xff0c;监测不到复制粘贴的内容&#xff0c;也就意味着不能调用接口&#xff0c;下拉框内容为空。 简要代码如下&#xff1a; <ElSelectstyle"width: 256px"multiplev-model{siteIdL…

偶然遇到一个问题,在 ElSelect 组件中设置 filterable 属性后,监测不到复制粘贴的内容,也就意味着不能调用接口,下拉框内容为空。

简要代码如下:

<ElSelectstyle="width: 256px"multiplev-model={siteIdList}clearablefilterableremoteremoteMethod={getSiteList}placeholder="请输入门店名称">{siteList.value.map((item) => (<ElOption label={item.siteName} value={item.siteId} />))}
</ElSelect>

对此进行分析。

1. 直观区别

在 ElSelect 组件中,onInput 和 onChange 都是用于监听用户选择内容的事件,区别在于:

1、onInput 事件

触发时机:onInput 事件在用户每次选择新选项时都会立即触发,即每当输入值发生变化(无论是添加or移除),都会触发这个事件。

适用场景:通常用于实时响应用户输入,如动态更新页面数据、过滤、自动填充等。其触发频率较高,更适合于即时性要求较高的场景。

2、onChange 事件

触发时机:onChange 事件仅在用户选择内容发生最终变化并确认时触发。例如,在用户点击选项列表中的某一项完成选择后,onChange 才会触发。重复选择同一个选项不会触发 onChange。

适用场景:更适合在选择操作完成后再进行的逻辑处理,例如提交表单、更新数据等。因为它只在确认选择后触发,频率较低,适合用于非即时响应的场景。

2. 事件挂载

在 ElSelect 组件中,onInput 和 onChange 事件的挂载有明显的不同,这关系到它们在 Vue 中的实现和具体作用。

1、onInput 事件

挂载位置:onInput 事件实际上是与 v-model 绑定的默认事件。在 Vue 中,v-model 会自动绑定组件的 input 事件来更新数据,因此当 ElSelect 的选择值发生变化时,它会触发 onInput 事件,将新值传递给 v-model 绑定的数据。这点需要额外注意📢下!

🌰:

<el-select v-model="selectedValue" @input="handleInput"><el-optionv-for="item in options":key="item.value":label="item.label":value="item.value"/>
</el-select>

当 selectedValue 更新时,@input 会自动触发,实时同步数据。

2、onChange 事件

挂载位置:onChange 是 ElSelect 自带的事件监听器,与 v-model 没有直接关系。它可以单独挂载在组件实例上,用于检测最终选择的变化。这点需要额外注意📢下!

🌰:

<el-select v-model="selectedValue" @change="handleChange"><el-optionv-for="item in options":key="item.value":label="item.label":value="item.value"/>
</el-select>

当用户的选择发生最终变化后,@change 会触发 handleChange 方法,而不会在每次切换选项时触发。

总结

3. 解决方法

针对上述分析,可以在 ElSelect 组件上使用 onInput 事件,监听内容的改变。

<ElSelectref={storeRef}style="width: 256px"filterableremoteremoteMethod={getSiteList}onInput={(e) => { handleInput(e?.data || ''); }}multipleclearablev-model={siteIdList}placeholder="请输入门店名称">{siteList.value?.map((item) => (<ElOption label={item.siteName} value={item.siteId} />))}
</ElSelect>

然后在 handleInput 事件上调用 storeRef 的 remoteMethod 事件进一步处理,由此成功解决。

const handleInput = debounce((query, type) => {storeRef.value.remoteMethod(query);
}, 300);
http://www.dt0577.cn/news/34989.html

相关文章:

  • 庐江县建设局网站打开百度一下网页版
  • 设计师必备网站设计网站推荐
  • 建设局怎么样搜索引擎优化的英文缩写
  • 武汉做网站公司seo上首页排名
  • 政府网站功能分析 选做上海全网推广
  • 网站 备案号查询seo网站推广方案策划书
  • 站酷网在线官网百度百科怎么创建自己
  • 素材网站个人做的泰安网站推广优化
  • 网站翻页功能收录是什么意思
  • 深圳响应式网站数据推广公司
  • 做网站外包是什么意思注册公司
  • 想把一个网站屏蔽了怎么做谷歌seo代运营
  • 做金融的网站有哪些免费顶级域名申请网站
  • 东莞网站开发哪家强最新小组排名
  • 青海省制作网站专业绍兴seo优化
  • 提供做网站公司有哪些网站推广服务报价表
  • 上海网站建设上海网站制作百度推广的广告真实可信吗
  • 石家庄医疗网站建设百度软文推广公司
  • 长宁区网站建设网站制作广告平台网站有哪些
  • 做emc的有哪些网站在线看seo网站
  • 网站生成app网上学电脑培训中心
  • 网站集约化建设 要求百度搜索入口官网
  • 如何在手机上做app白帽seo公司
  • 企业免费网站注册seo关键词排名优化系统
  • 爱网站关键词查询广告营销的经典案例
  • 做交流网站有哪些百度推广产品
  • 东昌府聊城网站建设中关村在线app
  • 网站主页排版百度推广售后客服电话
  • Wordpress吃内存怎么办seo教程seo教程
  • 珠海门户网站建设多少钱白杨seo教程