小程序-基础知识1

Mustache语法

小程序和vue一样提供了插值语法

在这里插入图片描述

但是小程序不能调用方法{{xxxx()}}

hidden属性

hidden是所有组件都默认拥有的属性,
hidden与wx:if的区别:
wx:if是控制组件是否渲染,hidden控制显示或隐藏是通过添加hidden属性。
在这里插入图片描述

wx:for

除了可以遍历数组还可以遍历字符串和数字

可以遍历字符串
在这里插入图片描述
也可以遍历数字

在这里插入图片描述

block是一个包装元素,类似与vue的template,不会渲染到页面上,可以定义item和index的名字
在这里插入图片描述

wxs

与js基本一致,它不依赖与运行的基础版本库,可以运行在所有版本的小程序。在wxs中不能调用其他js中的函数,也不能调用小程序提供的api

  • wxs可以写在<wxs>标签中,也可以写在.wxs结尾的文件中。

  • wxs标签的属性 :
    – module 当前标签的模块名
    – src 应用.wxs文件的路径

  • 每一个.wxs或<wxs>文件都是一个单独的模块,模块中的变量和函数都是私有的,要想到处只能通过module.exports

  • <wxs>标签形式
    在这里插入图片描述

  • .wxs形式

.wxs文件
在这里插入图片描述
引入.wxs文件
在这里插入图片描述

事件监听

以bind或catch开头如bindtap=“cli”,1.5.0后可以在bind或catch后加:

<view bindtap="cli">+</view>cli(e){console.log(e.target) //事件触发对象console.log(e.currentTarget) //事件处理对象
}

在这里插入图片描述

事件冒泡和捕获

捕获:capture-bind:tap=“cli”
组织事件进一步传播 capture-catch:
在这里插入图片描述

传参 的两种方式:
1.data-xx 自定义属性
2. mark

<view mark:age="111"   data-index="1">  </view>

组件化

通过新建Component建立组件
在这里插入图片描述

js文件
在这里插入图片描述
json文件
在这里插入图片描述
自定义组件也可以引用其他的组件,目录不能以wx-开头,在app.json中声明的可以直接在其他页面中使用

在这里插入图片描述

组件的样式

组件内的样式不会影响组件外的样式
组件内不能使用Id选择器、属性选择器、标签选择器。
Component对象中可以传入options,options有一个属性stylesolation可以让样式相互影响:

  • isolated
  • apply-shared
  • shared
  Component({options:{styleIsolation:"shared"     }})

组件间的通信

在这里插入图片描述

向组件传递properties

父组件向子组件传递值,子组件通过properties来定义传递的值的类型和默认值
支持String,Number,Boolean,Object,Array等
可以通过value设置默认值

<Test name="aaa" age="10"> </Test>Component({properties:{name:{type:Stringvalue:"nnn"},age:{type:Number,value:10} }})

向组件传递外部样式 externalClasses

如果希望组件的样式有外部决定可以使用 externalClasses

 //外部的css.test{color:red}//  作为属性传递给子组件
<Test  color="test"></Test>
//子组件
Component({options:{},externalClasses:['test']
})
<view class="test"></view>

自定义事件

子组件通过triggerEvent来定义

 onCli(){this.triggerEvent("triggerCli",{name:"aa"})
}

父组件 bind: xxxx

//子组件为test<Test bind:triggerCli="cli"> </Test>
cli(e){console.log(e)
}

插槽

单个插槽

<Test><view>name</view>
</Test>
//在子组件中使用
<view><slot></slot>
</view>

小程序的默认情况下不支持默认值,需要自己设置

<view class="content"><slot></slot>
</view>
<view class="default"></view>
//在content为空时,设置default为block
.default{display:none
}
.content:empty + .default{display:block
}

多个插槽

  <Test><view slot="left">left</view><view slot="center">center<view><Test>

使用多个插槽时要在options中把multipleSlots设为true

在这里插入图片描述

<view> <slot name="left"></slot>
</view>
<view><slot name="center"></slot>
</view>

behavier

// customBehavior.js  
module.exports = Behavior({  properties: {  property1: {  type: String,  value: 'default value'  }  },  data: {  data1: 'data value'  },  methods: {  method1() {  console.log('This is method1');  }  }  
});

在组件中使用 Behavior

// myComponent.js  ,import
const customBehavior = require('./customBehavior.js');  Component({  behaviors: [customBehavior],  properties: {  componentProperty: {  type: String,  value: 'component default value'  }  },  methods: {  callMethod() {  this.method1(); // 调用来自 Behavior 的方法  console.log(this.property1); // 使用 Behavior 中的属性  }  }  
});

组件的生命周期和页面的生命周期

组件的生命周期
在这里插入图片描述
页面的生命周期
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

HCIA--实验十九:配置接口DCHP

一、实验内容 1.需求/要求&#xff1a; 通过一台5700交换机和一台PC&#xff0c;通过在交换机的接口上配置接口DHCP来实现PC自动获取ip地址。 二、实验过程 1.拓扑图&#xff1a; 2.步骤&#xff1a; 1.给vlan10配置ip地址&#xff0c;进入vlan10开启接口的DHCP&#xff1…

Java数据库连接——JDBC

目录 1、JDBC简介 2、JDBC应用 2.1 建立数据库连接 2.1.1 DriverManager静态方法获取连接 2.1.2 DataSource对象获取 2.2 获取SQL执行对象 2.2.1 SQL注入 2.2.2 Statement(执行静态SQL) 2.2.3 PreparedStatement(预处理的SQL执行对象) 2.3 执行SQL并返回结果 2.4 关…

【笔记】材料分析测试:晶体学

晶体与晶体结构Crystal and Crystal Structure 1.晶体主要特征 固态物质可以分为晶态和非晶态两大类&#xff0c;分别称为晶体和非晶体。 晶体和非晶体在微观结构上的区别在于是否具有长程有序。 晶体&#xff08;长程有序&#xff09;非晶&#xff08;短程有序&#xff09…

机器人机构、制造

简单整理一下&#xff0c;在学习了一些运动学和动力学之类的东西&#xff0c;简单的整合了一些常用的机械结构和图片。 1.电机&#xff1a; 市面上的电机有&#xff1a;直流电机&#xff0c;交流电机&#xff0c;舵机&#xff0c;步进电机&#xff0c;电缸&#xff0c;无刷电…

李宏毅结构化学习 03

文章目录 一、Sequence Labeling 问题概述二、Hidden Markov Model(HMM)三、Conditional Random Field(CRF)四、Structured Perceptron/SVM五、Towards Deep Learning 一、Sequence Labeling 问题概述 二、Hidden Markov Model(HMM) 上图 training data 中的黑色字为x&#xff…

基于单片机的水位检测系统仿真

目录 一、主要功能 二、硬件资源 三、程序编程 四、实现现象 一、主要功能 基于51单片机&#xff0c;DHT11温湿度检测&#xff0c;水位检测&#xff0c;通过LCD1602显示&#xff0c;超过阈值报警&#xff0c;继电器驱动电机转动。通过矩阵按键切换选择设置各项参数阈值。 …

【Linux】通过内核以太层可查看应用程序运行时访问外网情况

比如&#xff0c;SourceInsight3.exe从外网接收信息&#xff1a; 下边是运行firefox时内核打印的日志&#xff0c;可以看到浏览器运行时调用了很多的操作系统内核系统调用&#xff0c;比如&#xff1a;文件读写、网络数据包的收发等等&#xff0c;其实这些日志还并不全&#x…

基于Ambari搭建hadoop生态圈+Centos7安装教程(还没写完,等明天补充完整)

当我们学习搭建hadoop的时候&#xff0c;未免也会遇见很多繁琐的事情&#xff0c;比如很多错误&#xff0c;需要解决。在以后公司&#xff0c;也不可能让你一个一个搭建hadoop&#xff0c;成千上万的电脑&#xff0c;你再一个个搭建&#xff0c;一个个报错&#xff0c;而且每台…

数据处理与统计分析篇-day08-apply()自定义函数与分组操作

一. 自定义函数 概述 当Pandas自带的API不能满足需求, 例如: 我们需要遍历的对Series中的每一条数据/DataFrame中的一列或一行数据做相同的自定义处理, 就可以使用Apply自定义函数 apply函数可以接收一个自定义函数, 可以将Series对象的逐个值或DataFrame的行/列数据传递给自…

K8s 之微服务的定义及详细资源调用案例

什么是微服务 用控制器来完成集群的工作负载&#xff0c;那么应用如何暴漏出去&#xff1f; 需要通过微服务暴漏出去后才能被访问 Service是一组提供相同服务的Pod对外开放的接口。借助Service&#xff0c;应用可以实现服务发现和负载均衡。service默认只支持4层负载均衡能力&…

OpenCV特征检测(10)检测图像中直线的函数HoughLinesP()的使用

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 在二值图像中使用概率霍夫变换查找线段。 该函数实现了用于直线检测的概率霍夫变换算法&#xff0c;该算法在文献 181中有所描述。 HoughLines…

JavaEE: 深入探索TCP网络编程的奇妙世界(五)

文章目录 TCP核心机制TCP核心机制六: 拥塞控制为什么要有拥塞控制?动态调整的拥塞控制拥塞控制中,窗口大小具体的变化过程 TCP核心机制七: 延时应答TCP核心机制八: 捎带应答 TCP核心机制 前一篇文章 JavaEE: 深入探索TCP网络编程的奇妙世界(四) 书接上文~ TCP核心机制六: 拥…

Parallels Desktop 20 for Mac 推出:完美兼容 macOS Sequoia 与 Win11 24H2

Parallels Desktop 20 for Mac 近日正式发布&#xff0c;这一新版本不仅全面支持 macOS Sequoia 和 Windows 11 24H2&#xff0c;还在企业版中引入了一个全新的管理门户。新版本针对 Windows、macOS 和 Linux 虚拟机进行了多项改进&#xff0c;其中最引人注目的当属 Parallels …

Python 入门(一、使用 VSCode 开发 Python 环境搭建)

Python 入门第一课 &#xff0c;环境搭建...... by 矜辰所致前言 现在不会 Python &#xff0c;好像不那么合适&#xff0c;咱先不求精通&#xff0c;但也不能不会&#xff0c;话不多说&#xff0c;开干&#xff01; 这是 Python 入门第一课&#xff0c;当然是做好准备工作&a…

计算机毕业设计 校园失物招领网站的设计与实现 Java实战项目 附源码+文档+视频讲解

博主介绍&#xff1a;✌从事软件开发10年之余&#xff0c;专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精…

嵌入式单片机STM32开发板详细制作过程--01

大家好,今天主要给大家分享一下,单片机开发板的制作过程,原理图的制作与PCB设计,以及电子元器件采购与焊接。 第一:单片机开发板成品展示 板子正面都有各个芯片的丝印与标号,方便焊接元器件的时候,可以参考。(焊接完成之后,成品图如下) 第二:开发板原理图制作 在制…

MATLAB中多张fig图合并为一个图

将下列两个图和为一个图 打开查看-----绘图浏览器 点击第一幅图中曲线右键复制&#xff0c;到第二幅图中粘贴即可完成

布草洗涤-酒店分楼层统计报表--———未来之窗行业应用跨平台架构

一、大酒店分层管理 1. 精准管理库存 - 能够清晰了解每个楼层布草的具体数量和状况&#xff0c;实现对布草库存的精细化管理&#xff0c;避免出现某些楼层布草短缺或过剩的情况。 2. 优化资源分配 - 依据各楼层的使用频率和需求差异&#xff0c;合理调配布草资源&…

排序--归并排序

1.什么是归并排序&#xff1f; 归并排序将待排序的数组分成两部分&#xff0c;对每部分递归地应用归并排序&#xff0c;然后将两个有序的子数组合并成一个有序的数组。这个过程一直重复&#xff0c;直到数组完全有序。归并排序的过程可以用一棵完全二叉树来形象地表示&#xf…

frpc内网穿透

官网地址&#xff1a;frp官网 本次用到的Liunx包&#xff1a; https://github.com/fatedier/frp/releases/download/v0.60.0/frp_0.60.0_linux_amd64.tar.gz下载&#xff1a; wget https://github.com/fatedier/frp/releases/download/v0.60.0/frp_0.60.0_linux_amd64.tar.g…