当前位置:首页 > 科技  > 软件

掌握这个技术,给轮播图和文本插上自由之翼

来源: 责编: 时间:2024-01-03 17:22:21 333观看
导读组件间通信技术如何赋能轮播图和文本图片上图画布中有两个组件: 轮播图 和 文本组件. 我们可以在图中看到当轮播图组件内容切换时, 文本组件内容也会对应的切换. 熟悉前端开发的小伙伴也许会觉得这样的功能很好实现,

组件间通信技术如何赋能轮播图和文本

图片图片UOa28资讯网——每日最新资讯28at.com

上图画布中有两个组件: 轮播图 和 文本组件. 我们可以在图中看到当轮播图组件内容切换时,  文本组件内容也会对应的切换. 熟悉前端开发的小伙伴也许会觉得这样的功能很好实现, 我们可以用诸如 react, vue 这样的框架来轻松实现数据状态的共享, 但是通过传统的组件开发方式来实现这样的功能, 存在太多的局限性, 比如:UOa28资讯网——每日最新资讯28at.com

1. 轮播图组件的图片和文本的位置相对比较固定, 不够灵活

我们一般的轮播图组件长这样:UOa28资讯网——每日最新资讯28at.com

图片图片UOa28资讯网——每日最新资讯28at.com

一般轮播图文案会放在图片中间或者底部, 如果产品经理或者设计师小朋友想调整文本的位置, 比如以下几种:UOa28资讯网——每日最新资讯28at.com

左图右文(或右图左文)排版:UOa28资讯网——每日最新资讯28at.com

图片图片UOa28资讯网——每日最新资讯28at.com

轮播文本出现在左上方:UOa28资讯网——每日最新资讯28at.com

图片图片UOa28资讯网——每日最新资讯28at.com

上图下文的轮播图排版:UOa28资讯网——每日最新资讯28at.com

图片图片UOa28资讯网——每日最新资讯28at.com

面对这些花里胡哨的排版设计, 传统做法只能通过程序员不断修改或者扩展代码,才能实现这些的需求.UOa28资讯网——每日最新资讯28at.com

2. 上线成本高, 不够敏捷

这里的“成本”并不是组件的修改成本高, 因为改变位置对程序员来说都是小意思, 这里的成本指的是时间成本. 因为网站上线会涉及一系列的准备工作, 比如代码修改, 代码提交, 代码测试, 最终再把网站上线.UOa28资讯网——每日最新资讯28at.com

图片图片UOa28资讯网——每日最新资讯28at.com

同时花大部分时间做一些低价值的任务, 对程序员自身成长也不友好, 所以我们需要思考更优雅的方式.UOa28资讯网——每日最新资讯28at.com

3. 样式设计的局限性较大

比如我们要实现带背景的轮播图文案, 如果按照老路子开发, 程序员又得哗哗写代码了.UOa28资讯网——每日最新资讯28at.com

轮播图这类对外展示信息的需求, 虽然大多不是企业的核心需求, 但是某些时候却对企业的形象和企业价值传递至关重要, 所以我们必须要及时响应需求的变化, 第一时间维护公司的形象.UOa28资讯网——每日最新资讯28at.com

怎么去做呢? 我的答案是: 让产品经理和设计师们自己去维护轮播图组件.UOa28资讯网——每日最新资讯28at.com

解决方案演示

  1. 解决轮播图组件图片和文本的位置相对比较固定, 不够灵活的问题

图片图片UOa28资讯网——每日最新资讯28at.com

图片图片UOa28资讯网——每日最新资讯28at.com

  1. 解决轮播文本样式的局限性

图片图片UOa28资讯网——每日最新资讯28at.com

轮播文案动画效果:UOa28资讯网——每日最新资讯28at.com

图片图片UOa28资讯网——每日最新资讯28at.com

轮播和文案分离的课件式交互:UOa28资讯网——每日最新资讯28at.com

图片图片UOa28资讯网——每日最新资讯28at.com

当然还有很多玩法等待大家开启, 如果我们把这个功能嫁接给产品或者业务人员, 那么将极大的解放程序员的双手, 也能极大的提高公司需求变更的响应速度.UOa28资讯网——每日最新资讯28at.com

接下来我就来分享一下如何实现轮播图和文本的跨越式通信.UOa28资讯网——每日最新资讯28at.com

技术实现方案

之前和大家分享了两期跨组件通信的技术方案, 我们继续沿用之前的方案, 来实现轮播图和文本的通信.UOa28资讯网——每日最新资讯28at.com

  1. 首先在轮播图组件中创建并触发自定义事件:
//  触发函数const handleTrigger = (value: string) => {    if(targetId) {      document.dispatchEvent(new CustomEvent(`source_text_${targetId}`, { detail: value }))    }  }  // 当轮播图onchange时传递数据并触发<Carousel    className={cid}    notallow={index => {      // some code ...      // 一触即发      handleTrigger(_data.length ? _data[index]?.title : imgList[index]?.title);    }}    directinotallow={direction}    swipeable={swipeable}    autoPlay={autoPlay}    loop    >    {contentRender()}</Carousel>
  1. 在文本组件中监听事件并响应数据回传
useEffect(() => {    const eventName = `source_text_${id}`;    function handleDataChange(event: any) {      setData(event.detail);    }    document.addEventListener(eventName, handleDataChange)    return () => document.removeEventListener(eventName, handleDataChange)  }, [])

没错, 就这么点代码, 就实现了轮播图组件和文本组件的通信, 大家学会了吗?UOa28资讯网——每日最新资讯28at.com

当然底层上还是依赖Dooring零代码提供的便捷搭建能力和扩展能力, 让组件间通信能焕发出更大的价值.  如果大家想体验这一功能, 也欢迎线上使用, 同时也欢迎将这一方案用在自己公司的产品上, 更大的提高公司产研效率.UOa28资讯网——每日最新资讯28at.com

再展开想象, 这种方案不止于轮播图, 比如我之前分享的搜索和列表组件, 对于业务层, 应用这一方案可以发挥更大的价值.UOa28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-57289-0.html掌握这个技术,给轮播图和文本插上自由之翼

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: Pandas入门的12个技巧

下一篇: 详尽解读:甲骨文云 OCI Cloud 入门与管理全攻略

标签:
  • 热门焦点
  • 小米降噪蓝牙耳机Necklace分享:听一首歌 读懂一个故事

    在今天下午的小米Civi 2新品发布会上,小米还带来了一款新的降噪蓝牙耳机Necklace,我们也在发布结束的第一时间给大家带来这款耳机的简单分享。现在大家能见到最多的蓝牙耳机
  • 石头智能洗地机A10 Plus体验:双向自清洁治好了我的懒癌

    一、前言和介绍专为家庭请假懒人而生的石头科技在近日又带来了自己的全新旗舰新品,石头智能洗地机A10 Plus。从这个产品名上就不难看出,这次石头推出的并不是常见的扫地机器
  • 三言两语说透设计模式的艺术-单例模式

    写在前面单例模式是一种常用的软件设计模式,它所创建的对象只有一个实例,且该实例易于被外界访问。单例对象由于只有一个实例,所以它可以方便地被系统中的其他对象共享,从而减少
  • JavaScript学习 -AES加密算法

    引言在当今数字化时代,前端应用程序扮演着重要角色,用户的敏感数据经常在前端进行加密和解密操作。然而,这样的操作在网络传输和存储中可能会受到恶意攻击的威胁。为了确保数据
  • 一文掌握 Golang 模糊测试(Fuzz Testing)

    模糊测试(Fuzz Testing)模糊测试(Fuzz Testing)是通过向目标系统提供非预期的输入并监视异常结果来发现软件漏洞的方法。可以用来发现应用程序、操作系统和网络协议等中的漏洞或
  • 2023年,我眼中的字节跳动

    此时此刻(2023年7月),字节跳动从未上市,也从未公布过任何官方的上市计划;但是这并不妨碍它成为中国最受关注的互联网公司之一。从2016-17年的抖音强势崛起,到2018年的&ldquo;头腾
  • 腾讯VS网易,最卷游戏暑期档,谁能笑到最后?

    作者:无锈钵来源:财经无忌7月16日晚,上海1862时尚艺术中心。伴随着幻象的精准命中,硕大的荧幕之上,比分被定格在了14:12,被寄予厚望的EDG战队以绝对的优势战胜了BLG战队,拿下了总决
  • iQOO 11S或7月上市:搭载“鸡血版”骁龙8Gen2 史上最强5G Soc

    去年底,iQOO推出了“电竞旗舰”iQOO 11系列,作为一款性能强机,iQOO 11不仅全球首发2K 144Hz E6全感屏,搭载了第二代骁龙8平台及144Hz电竞屏,同时在快充
  • 电博会与软博会实现"线下+云端"的双线融合

    在本次“电博会”与“软博会”双展会利好条件的加持下,既可以发挥展会拉动人流、信息流、资金流实现快速交互流动的作用,继而推动区域经济良性发展;又可以聚
Top