如何写好JavaScript|青训营

40 阅读2分钟

JavaScript编码原则之组件封装

组件就是指我们在Web页面上抽象出来的,好的组件要具备封装性,正确性,扩展性,复用性。

比如要做一个电商的轮播图,第一步我们是需要定义一个HTML结构,是一个典型的列表结构,可以用无序列表来实现。切换图片的效果可以使用CSS的绝对定位来实现,将图片约在同一个位置,如何用修饰符来切换图片的状态。我们有了HTML和CSS之后就可以用JavaScript来实现我们切换的行为,然后就设计几个API,第一个我们要得到当前选中的那个图片的元素,,第二个我们要选中这个图片的元素,第三个我们有一个silde to到某个特定的元素上,然后有sky next和sky previous就分别表示向后轮播下一个图片,和轮播上一个图片,这样的话,我们可以定义一个类,在这个类里面去实现这样的一些API。然后它出一个index那么这个时候我们首先得到当前被选中的这个元素,设置成一个非选的状况,接下来就会得到一个暗示,暗示应该是里面的什么什么要选中,把这个被@的状态设置成被选中的,那么我们就实现了这个功能。接下来我们有四个小圆点没有设置,我们要控制这个点,这个时候有一个技巧叫做用自定义事件来解决的控制。在案例中这四个小圆点是跟图片对应的,是有状态的这个状态是跟图片的状态绑定的,所以它是有绑定的过程,一般情况下,我们是通过自定义事件来实现的,组件小圆点的状态和图片的状态合在一起,这个组件写好之后还要进一步去思考,去观察这个组件里还有什么改进的空间。

总结:在通常情况下,我们设计一个UI组件是需要去做结构设计,然后用CSS来实现转变效果,然后我们做行为设计,在行为设计里包括一些API和控制流。API就去设置一些接口,然后来操作,控制流的话通常情况下用制定事件来提供,那这样的话,就可以实现一个基本的组件。

上面就是我整理的这节课的笔记内容,平时常见的电商的轮播图片,以为是很难的东西,没想到在老师讲解之后,好像并不是很难,我学会了个大概,接下来会运用到实践中,进行举一反三的学习。