什么是组件

  • Post author:
  • Post category:其他

什么是组件

谈论小程序组件之前,我们先讨论一下什么是组件。这也是前端开发目前比较流行的一种编程方式—组件化编程。

那到底什么是组件哪?不同的人对组件都有不同的见解,以下是我对组件的解释:

组件(Component)是对数据和方法的简单封装。

熟悉后端同学可能对这个概念比较理解,这就是对对象的一个描述。也就是经常提起的面向对象编程。

同样前端的一个组件也可以看作是一个对象。作为视图的一部分,它具有对应的属性和方法,提供给外部调用。

了解的组件的基本概念,那一个组件的粒度应该如何控制哪?

首先我们考虑粒度较小的一个场景,比如一个<view/>节点或者<button/>就可以是一个组件。适用于灵活多变的场景之中,复用性较强。

粒度较大的组件比如是一整个页面,由许多粒度小的组件所组成的。使用场景虽然比较少,但是功能性较强,可以传递较多的数据。

粒度的大小是根据使用场景所决定的,但是万变不离其宗。它们都符合组件的基本概念。

下面通过一个示例让大家直观的感受下以上所说的知识。

这个示例可以分为两个组件:

第一个是一个布局组件,可以把整个页面看作一个容器,它是一个垂直布局,可以叫做<column-container/>

<!-- <column-container/> -->
<view>
    <slot/>
</view>
复制代码

第二个组件是一个卡片布局的组件。命名为<article-card/>

<view>
    <text>title</text>
    <text>describe</text>
    <img/>
<view>
复制代码

最终这个页面为下面这几行简单代码。

<column-container>
    <article-card/>
</column-container>
复制代码

章节小结

本章节作为开篇,旨在让各位读者可以从更广的角度看待组件,对待事物有自己的见解。提出问题,解决问题也是程序员基本的素质之一。各位加油,我们下个章节讲下什么是微信小程序组件