博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
小程序使用之自定义组件
阅读量:5894 次
发布时间:2019-06-19

本文共 1580 字,大约阅读时间需要 5 分钟。

今天要介绍的是小程序的 自定义组件 ,类似的在做android 开发的过程中会用到自定义view,封装成通用的组件可以在不同页面里重复使用;可以将复杂的页面拆分成多个低耦合的模块,便于代码的维护。

一个自定义组件由js json wxml wxss  4个文件组成,微信开发者工具里新建 选择 Component,会自动创建这个4个文件, json文件里设置:

{  "component": true}复制代码

这一组文件可以当做自定义组件使用。

一个简单的例子,自定义item当做组件使用。   在组件的wxml文件里码上页面元素

  
{
{txt}}
  
    
      
      
{
{title}}    
    
{
{subTitle}}  
复制代码

组件提供<slot>节点,用于承载组件在引用时提供的子节点,可以当做占位的标志,后面可以将视图直接填充到此节点。

wxss是对应组件的样式

.content{  display: flex;  justify-content: space-between;  align-items: center;  padding-left: 10px;  padding-right: 10px}.title{  color: #424242}.subTitle{  color: #939393;  font-size: 16px}复制代码

js文件里的Component构造器可以指定组件的属性、数据、方法等。

/*** 组件的属性列表*/properties: {    title: {      type: String, //属性类型      value: "--" //属性初始值    },    subTitle: {      type: String,      value: "--"     },}复制代码

属性列表里的值对应渲染在组件的wxml里。

/*** 组件的初始数据*/data: {    txt:"颜色"},复制代码

组件的内部数据用于wxml的渲染。

在需要用到组件的页面json文件里添加,注意路径是绝对路径:

{  "usingComponents": {    "item": "/component/item/item" //绝对路径  }}复制代码

wxml页面内直接使用<item>标签,该标签下的节点text 用于填充到<solt>

  
    
1、
  
复制代码

一个简单的页面渲染

组件也可以接受外部传入的样式,在组件的js文件 Component 构造器里

Component({  externalClasses: ['title-class']})复制代码

注意这里使用*-class 的形式定义,在组件的wxml里

{
{title}}复制代码

外部使用的话,可以看到外部的样式传递给组件使用。

//wxml文件
    
1、
//wxss.red-class{  color: red}复制代码

一个简单的组件的例子完成,实际项目中,通过自定义组件便于在不同的页面中重复使用。

转载于:https://juejin.im/post/5c13be83f265da615b71599b

你可能感兴趣的文章
【3】数据库的表设计和初始化
查看>>
正则表达式匹配非需要匹配的字符串(标题自己都绕晕了)
查看>>
沙盒目录介绍
查看>>
260. Single Number III
查看>>
c#基础--字符串的处理_string类
查看>>
《C语言》-(流程控制:顺序结构、选择结构、循环结构)
查看>>
Hadoop生态圈-Kafka的完全分布式部署
查看>>
《玩转Django2.0》读书笔记-探究视图
查看>>
SOCK_STREAM & SOCK_DGRAM
查看>>
css的border的solid
查看>>
div+css实现window xp桌面图标布局(至上而下从左往右)
查看>>
0-1 背包问题
查看>>
运行Maven是报错:No goals have been specified for this build
查看>>
Haskell 差点儿无痛苦上手指南
查看>>
[MODx] Build a CMP (Custom manager page) using MIGX in MODX 2.3 -- 1
查看>>
NTP 服务器配置
查看>>
jQuery自动完成点击html元素
查看>>
[算法]基于分区最近点算法的二维平面
查看>>
linux在文件打包和压缩
查看>>
webpack多页应用架构系列(七):开发环境、生产环境傻傻分不清楚?
查看>>