jq监听子元素被点击_vue开发app点击字母展示地区列表(兄弟组件之间联动)

1d87c6f8082f49cbcdf1eab4a3932aee.png

下图这种地区搜索方式在很多app中都很常见,今天就使用vue框架中的 better-scroll 第三方包来实现页面滚动和点击侧边栏字母该字母开头的地区列表置顶功能。

543c43d9d609e6d8e7dff9dc137d775f.png

1、A子组件通过使用 this.$emit(事件名字,事件携带内容) 向外触发事件

首先,在组件每个字母元素上绑定事件,在该事件中向外触发事件,并将值传递出去:

  • v-for="(item,key) in city"

    :key="key"

    @click="handleLetterClick"

    >

    {{ key }}

methods:{

handleLetterClick(e){

this.$emit('change',e.target.innerText)

}

}

2、父组件接收A组件传过来的事件,并通过属性来向B组件传值

因为组件传递过来的是单个字符串,所以,先在data中定义一个属性letter来接收这个值;

并在父组件模板中的组件中定义传递的方法@change="handleLetterChange"用来获取传递的值;

将letter属性传递给另一个子组件;

:city="cities"

:hot="hotCities"

:letter="letter"

>

:city="cities"

@change="handleLetterChange"

>

data(){

return{

letter:''

}

},

methods:{

handleLetterChange(letter){

this.letter = letter

}

},

3、B组件接收父组件传递过来的属性,并通过watch监听参数的变化,然后执行页面的滚动显示

首先,给每个地址列表区域元素加 ref ,better-scroll会根据ref给指定区域进行操作;

然后使用watch监听letter变化,并使用better-scroll中的scrollToElement接口执行页面滚动;

v-for="(item,key) in city"

:key="key"

:ref="key"

>

...

props:{

letter:String

},

watch:{

letter(){

if(this.letter){

// scrollToElement里只接受单个DOM元素,不接收数组

//因为上面的div元素是数组渲染出来的,所以这里this.$refs得到的是数组

const element = this.$refs[this.letter][0]

this.scroll.scrollToElement(element)

}

}

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/340310.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

e-mobile帐号状态存在异常_一文掌握异常检测的实用方法 | 技术实践

作者 | Vegard Flovik译者 | Tianyu责编 | Jane出品 | AI科技大本营(ID: rgznai100)【导读】今天这篇文章会向大家介绍几个有关机器学习和统计分析的技术和应用,并展示如何使用这些方法解决一些具体的异常检测和状态监控实例。相信对一些开发…

单片机sleep函数的头文件_单片机代码模块化设计思想浅谈

前言:前段时间分享的文章【单片机裸机代码框架设计思路】,很多读者给我留言,觉得很不错,对于初学者而言,这是一个进阶的技巧,对于我而言,这是对自己总结和表达能力的一个提升。本文章我们再谈谈…

jquery 字符串查找_JQuery、Vue等考点

一. 写出下面程序的运行结果for结果:1秒后一下子打印出5个5。当循环完成时才会轮到setTimeout异步执行其回调函数function,此时i已经变成5,故5个console.log(i)里的i全使用的是5。易错点:千万别写成“打印5个4”啊!暴风…

html网页效果分析,熟手的html编写风格与原因分析_HTML/Xhtml_网页制作

一、导航:无序列表 对 其它标签元素用最常用的“无序列表“来写导航的理由是显而易见的,它代表一列链接,这本身就有足够的理由应选择列表标签。但需要移除list列表的默认样式,以使其更有意义。另一个好处可能超出你的想象&#xf…

qgis 图片_QGIS入门教程公告!!!

从本周开始,我将每周日更新一期QGIS入门教程视频,带讲解,估计这也是很多朋友所希望的。操作中用到的数据下载链接我会放在每一期的视频下方。以下是入门课程的目录:1.开启你的QGIS之旅——制作你的第一张地图2.属性表基础——字段…

css less 不要作用到子对象_CSS-预处理语言Sass、Less简述

CSS作为前端开发的三驾马车之一,无时无刻不在影响着前端的发展。为了让 CSS 变得更加的好用,出现了一些预处理语言。 它们让 CSS 彻底变成一门可以使用变量 、循环 、继承 、自定义方法等多种特性的标记语言,逻辑性得以大大增强SassSass是成熟…

js 点击侧边栏展示内容_上海SEO优化网站侧边栏一般添加什么内容

相关推荐:https://www.huisheng.com/上海SEO优化网站侧边栏一般添加什么内容?企业做网站每个板块都是非常重要的,之前跟大家解析了关于导航栏的布局,哪些内容该添加,哪些内容不该添加,而今天小编要跟大家解…

机器人辅助的符文天赋_10.5版本T1辅助盘点 进攻型辅助主宰下路

摘要:今天为大家推荐10.5版本的三大T1辅助,在当前版本每层塔钱增加到160后,这些前期进攻性较强的辅助更容易上分,他们都有直接或间接击毁镀层的能力,赛娜推线压制后的远程点塔,机器人靠着钩子的威胁上前、日…

dataframe 选择输出_使用 Python 实现机器学习特征选择的 4 种方法

(给数据分析与开发加星标,提升数据技能)英文:Sugandha Lahoti,转自:数据派(ID:datapi),翻译:李洁注:本文节选自Ankit Dixit所著的《集成机器学习》(Ensemble Machine Learning)一书。…

ps一点等于多少厘米_企业展厅设计关于展台你了解多少?

发 现 生 活 中 最 美 好 的 设 计打开音乐聆听设计伽的声音水北展陈今日份文章:企业展厅设计关于展台你了解多少?企业展厅设计展台是各种展品、实物、模型以及沙盘的展示介质之一。企业展厅设计展台的设计和选用要从企业展厅设计展品的特征出…

springboot 单测加入参数_Spring Boot集成Elasticsearch实战分享

作者|java梦想口服液|简书最近有读者问我能不能写下如何使用 Spring Boot 开发 Elasticsearch(以下简称 ES) 相关应用,今天就讲解下如何使用 Spring Boot 结合 ES。可以在 ES 官方文档中发现,ES 为 Java REST Client 提供了两种方式的 Client&#xff1a…

计算机主机安装系统安装系统安装软件,电脑安装软件时提示安装过程出错系统设置未被修改怎么办...

‍电脑安装软件,尤其是安全管理这一类软件,可能会出现安装失败的情况,提示安装过程出现错误,未修改系统设置等。这是怎么回事?这些软件在安装的时候可能会修改系统相关的核心设置,所以电脑系统会阻止其安装。下面让我…

ps图片拖不进去_PS教学:你的logo还不够高大上?7步教做出黄色金属质感logo

今天美迪君向大家分享一下,如何用ps简单制作带有黄色金属质感的logo方法,难度不仅不大,且制造出来的logo也是非常漂亮,值得大家学习。接下来就为大家演示一下制造的方法。1、打开PS,CtrlN新建一个1920*1080的画布(根据…

简单比对照片是否相同_小新说法 | 如何认定商标是否侵权?

如何认定商标是否侵权?原创 | 高姗 江苏东能律师事务所商标是商品的生产者、经营者在其生产、制造、加工、拣选或者经销的商品上或者服务的提供者在其提供的服务上采用的,用于区别商品或服务来源的,包括文字、图形、字母、数字、三维标志、颜…

单片机拼字程序怎么做_家装行业做小程序怎么样?

对于家装行业,给大家提到了很多获客引流的方式,无论是线上还是线下,只要坚持去做,最后肯定会取得成果的。关于线下的给大家提到最多的就是合作共赢的模式来拓客,线上主要就是打电话和表单或者进入平台的形式&#xff0…

python 删除csv第一行_python 标准库学习之 csv

本文由作者 凭海临风 授权刊登。原文地址:https://jeffsui.github.io/2020/01/02/python-standard-library-csv/文档路径官方文档:https://docs.python.org/zh-cn/3.8/library/csv.htmlCSV 文件格式文件扩展名为.csv,通用的电子表格文件格式&…

idea java主题_IDEA变身超级形态,需要这个酷炫主题

码个蛋(codeegg) 第 1090 次推文作者:CodeWhite7链接:https://blog.csdn.net/weixin_46146269/article/details/104793277前言IDEA,全称 IntelliJ IDEA ,是 Java 语言的集成开发环境, IDEA 在业界被公认为是最好的 jav…

百度云盘照片导入华为相册里_必须知道的相册管理工具

相信很多人都会在手机上存许多值得回忆的照片,为了避免丢失,我们常常会使用网盘工具来管理我们的照片,例如,比较常用的有百度网盘、天翼云盘、115网盘这三款工具,那么这三款网盘在相册功能上有什么特色呢?今…

优化自定义函数_Pandas常见的性能优化方法

文章来源于Datawhale ,作者阿水Pandas是数据科学和数据竞赛中常见的库,我们使用Pandas可以进行快速读取数据、分析数据、构造特征。但Pandas在使用上有一些技巧和需要注意的地方,如果你没有合适的使用,那么Pandas可能运行速度非常…

pycharm cant open file_PyCharm

1.创建项目PyCharm是一种Python IDE.PyCharm的功能到底有多强大,我也说不清楚,今天只是介绍一下关于Pycharm创建项目的问题.✦ PyCharm可以将一个文件夹作为工程(或项目)进行打开.如图1所示,先创建两个文件夹(pyc1和pyc2),在文件夹…