微信小程序APP页面的之间的相互传递参数以及自定义组件


Posted in Javascript onApril 19, 2022

1. 自定义组件

小程序允许我们使用自定义组件的方式来构建页面。

官方文档

自定义组件

是不是用的微信的组件感觉很爽啊,如果不够用怎么办?

1.1 创建自定义组件

类似于页面,一个自定义组件由jsonwxmlwxssjs4个文件组成

1.1.1 声明组件

首先需要在json文件中进行自定义组件声明

{
  "component": true
}

微信小程序APP页面的之间的相互传递参数以及自定义组件

1.1.2 编辑组件

同时,还要在wxml文件中编写组件模板,在wxss文件中加入组件样式

注意:在组件wxss中不应使用ID选择器、属性选择器和标签名选择器。

<!--componentes/com/com.wxml-->
<view>我是组件</view>
<button>按钮组件{{num}}</button>

微信小程序APP页面的之间的相互传递参数以及自定义组件

1.2 使用自定义组件

首先要在页面的json文件中进行引用声明。还要提供对应的组件名和组件路径

注册-->使用

# json文件中注册
{
    // 引用声明
  "usingComponents": {
    // 要使用的组件的名称     // 组件的路径
    "com": "/componentes/com/com"
  }
}
# wxml文件中使用
<!--pages/test1/test1.wxml-->
<com></com>

微信小程序APP页面的之间的相互传递参数以及自定义组件

1.3 页面向自定义组件传递数据(父传子)

注意点:  

1.properties中:是写其他页面传过来的变量 

2.data中:本页面的变量,属性

# 组件wxml文件
<!--componentes/com/com.wxml-->
<!-- name值是由页面决定的 -->
<view>{{name}}大帅逼</view>  
# 组件js文件
// componentes/com/com.js
Component({
  /**
   * 组件的属性列表
   */
  properties: {
    name:{
      type: String,	//属性的类型
      value: 'jeff'  // 属性的默认值,如果页面没有给这个name赋值,就使用这个value的值
    } 
  },
  /**
   * 组件的初始数据
   */
  data: {
  },
#页面中wxml
<my-con  title="{{变量名}}"><my-con/>
 #再组件中
   properties: {
    title:{
      type:String,
      value:"你好"
    }
  }
# 页面wsml文件
<com name='chary'></com>  //可以是固定值
<com name = "{{name1}}"></com> //这里的可以是变量

1.4 组件将事件传给页面(子传父)

组件的方法methods里面

# 组件wxml文件
<button bind:tap="click">加一</button>
# 组件js文件
methods: {
    click:function(e){
      this.triggerEvent("jia1")  // 传递jia1事件,不带参数的
      # this.triggerEvent("jia1",{num:e.currentTarget.dataset.num})  //带参数的
    }
  }
# 页面wxml文件 捕获事件
<view>{{num}}</view>
<com bind:jia1="jia"></com>
# 页面js文件
// pages/test1/test1.js
Page({
  data: {
    num:0
  },
  jia:function(e){
    this.setData({
      num: this.data.num + 1
  })
  }
})

以上就是微信小程序自定义组件与页面的相互传参的详细内容!

Javascript 相关文章推荐
用javascript获得地址栏参数的两种方法
Nov 08 Javascript
判断页面是关闭还是刷新的js代码
Jan 28 Javascript
firefo xml 读写实现js代码
Jun 11 Javascript
Jquery AutoComplete自动完成 的使用方法实例
Mar 19 Javascript
纯js分页代码(简洁实用)
Nov 05 Javascript
JS获取html对象的几种方式介绍
Dec 05 Javascript
jQuery中关于ScrollableGridPlugin.js(固定表头)插件的使用逐步解析
Jul 17 Javascript
jQuery中:gt选择器用法实例
Dec 29 Javascript
Bootstrap风格的zTree右键菜单
Feb 17 Javascript
Vue表单验证插件Vue Validator使用方法详解
Apr 07 Javascript
node.js实现微信开发之获取用户授权
Mar 18 Javascript
bootstrap+spring boot实现面包屑导航功能(前端代码)
Oct 09 Javascript
微信小程序APP的事件绑定以及传递参数时的冒泡和捕获
微信小程序APP的生命周期及页面的生命周期
解决vue中provide inject的响应式监听
Apr 19 #Vue.js
vue3种table表格选项个数的控制方法
Apr 14 #Vue.js
vue项目配置sass及引入外部scss文件
Apr 14 #Vue.js
解决vue-router的beforeRouteUpdate不能触发
Apr 14 #Vue.js
vue3语法糖内的defineProps及defineEmits
Apr 14 #Vue.js
You might like
php下实现一个阿拉伯数字转中文数字的函数
2008/07/10 PHP
PHP调用Webservice实例代码
2011/07/29 PHP
改写函数实现PHP二维/三维数组转字符串
2013/09/13 PHP
javascript学习笔记(八) js内置对象
2012/06/19 Javascript
JS声明变量背后的编译原理剖析
2012/12/28 Javascript
禁用JavaScript控制台调试的方法
2014/03/07 Javascript
js中精确计算加法和减法示例
2014/03/28 Javascript
兼容主流浏览器的JS复制内容到剪贴板
2014/12/12 Javascript
js点击文本框后才加载验证码实例代码
2015/10/20 Javascript
Bootstrap精简教程
2015/11/27 Javascript
详解JavaScript对象序列化
2016/01/19 Javascript
jquery实现ajax加载超时提示的方法
2016/07/23 Javascript
将JSON字符串转换成Map对象的方法
2016/11/30 Javascript
Bootstrap fileinput文件上传预览插件使用详解
2017/05/16 Javascript
jquery实现一个全局计时器(商城可用)
2017/06/30 jQuery
一个简易的js图片轮播效果
2017/07/22 Javascript
详解bootstrap用dropdown-menu实现上下文菜单
2017/09/22 Javascript
JavaScript 异步调用
2017/10/25 Javascript
javascript修改浏览器title方法 JS动态修改浏览器标题
2017/11/30 Javascript
深入浅出了解Node.js Streams
2019/05/27 Javascript
关于ligerui子页面关闭后,父页面刷新,重新加载的方法
2019/09/27 Javascript
关于Python 3中print函数的换行详解
2017/08/08 Python
对Python发送带header的http请求方法详解
2019/01/02 Python
python学习--使用QQ邮箱发送邮件代码实例
2019/04/16 Python
Jupyter Notebook打开任意文件夹操作
2020/04/14 Python
浅谈TensorFlow之稀疏张量表示
2020/06/30 Python
Python实现快速大文件比较代码解析
2020/09/04 Python
pyqt5实现井字棋的示例代码
2020/12/07 Python
美国Max仓库:Max Warehouse
2020/05/31 全球购物
澳大利亚在线批发商:Simply Wholesale
2021/02/24 全球购物
如何减少垃圾回收让内存更加有效使用
2013/10/18 面试题
领导干部群众路线教育实践活动剖析材料
2014/10/10 职场文书
个人承诺书格式范文
2015/04/29 职场文书
如何撰写出一份完美的商业计划书?
2019/07/12 职场文书
读《茶花女》有感:山茶花的盛开与凋零
2020/01/17 职场文书
tomcat默认最大连接数及相关调整方法
2022/05/06 Servers