小程序之wepy框架
最近这段时间有做用到wepy框架的小程序啦,记录一下在开发中一些常用的和需要注意的东西。
数据绑定
可以直接this.xxx = “xxx”,但是需要注意的是在methods之外的方法中,要这样去改data中的数据就必须要加上this.$apply()
methods
只有bindtap这类方法才需要放到methods中,其他的方法都与onLoad平级
events
自定义的事件,事件函数写这里面(组件的事件监听需要写在events里)
// 在子组件中
this.$emit('changeDate', time)
// 在父组件中
events = {'changeDate': (day) => {this.getTask(day)}
}
事件绑定以及事件传参
事件绑定语法使用优化语法代替
- 原 bindtap=“click” 替换为 @tap=“click”,原catchtap="click"替换为@tap.stop=“click”(阻止冒泡事件向上冒泡)。
- 原 capture-bind:tap=“click” 替换为
@tap.capture=“click”,原capture-catch:tap="click"替换为@tap.capture.stop=“click”。 - 事件传参使用优化后语法代替。 原bindtap=“click” data-index="{{index}}"替换为@tap=“click({{index}})”
wepy框架组件传值
1.父传子
和vue一样动态属性的方式传值,然后子组件props接收
// 在父组件内(注意:想要父组件的值改变,传给子组件中的值也跟着变化,一定要用.sync!!!为此踩了好久的坑)
<children :list.sync="list"></children>
// 在子组件内
list: {type: Array,default: []
}
2.$broadcast
这个是用来父传子自定义事件的,可以携带参数传值
// 在父组件内
this.$broadcast('index-broadcast', '我正在测试哈哈哈哈')
// 在子组件内
events = {'index-broadcast': (...args) => {console.log(args) //["我正在测试哈哈哈哈", _class]}
}
3.$emit
这是子组件传给父组件自定义事件,可以携带参数传值
// 在子组件中
this.$emit('changeDate', time)
// 在父组件中
events = {'changeDate': (day) => {this.getTask(day)}
}
4.$invoke
如果通过当前组件进行$invoke触发事件,如果父组件已经在components里面引入了子组件就可以直接通过invoke来单独向子组件发送事件。如果是子组件之间的事件交互,第一个参数就需要对应组件的路径。
简单的理解就是可以调用子组件或者兄弟组件中的函数,给该函数传参。
// 父子组件中使用$invoke的情况下
// 在父组件中
this.$invoke('子组件,必须要单引号括起来', '子组件方法名称', param1,param2,param3.......);
this.$invoke('Tabbar', 'changeSelected', 0)
// 在子组件Tabbar中
methods = {changeSelected(num) {this.selected = num}
};// 在兄弟组件中使用$invoke的情况下
this.$invoke('子组件的相对路径', '子组件方法名称', param1,param2,param3.......);
如果有总结不对的地方,欢迎指正哦~
小程序之wepy框架相关推荐
- 微信小程序基于wepy框架开发之问题集锦
目录 1.报错提示:appJSON["window"]["navigationBarTextStyle"] 字段需为 black 或 white 2.有时候代码 ...
- 《web开发: (微信小程序)WePY 框架开发规范 》
一.WePY 框架开发规范 1. 自定义默认首页 1. 创建 home 首页 在 src -> pages 目录下,创建 home.wpy 页面,并创建页面的基本代码结构,示例代码如下: ...
- 最近学习mpvue框架开发微信小程序,把wepy框架的项目实现到mpvue中,知道其中的一些两者之间的区别...
## 如果有兴趣的话,大家可以去github上下载, 我是用mpvue框架做的这个项目 github链接地址: https://github.com/PinkYun/PinkJing 转载于:htt ...
- mpvue 微信小程序api_第三方框架与原生微信小程序开发框架性能之比较 | Q荐读...
作者 | 崔红保编辑 | 王莹 自 2017年1月9日微信小程序诞生以来,历经 2 年多的迭代升级,已有数百万小程序上线,成为继 Web.iOS.Android 之后,第四大主流开发技术. 与之相随, ...
- mpvue 微信小程序_使用Vue.js开发微信小程序:开源框架mpvue解析
戳蓝字"CSDN云计算"关注我们哦! 作者 | 成全 责编 | 阿秃 转自 | 美团技术团队企业博客 前言 mpvue是一款使用Vue.js开发微信小程序的前端框架.使用此框架,开 ...
- 用Vue.js开发微信小程序:开源框架mpvue解析
前言 mpvue 是一款使用 Vue.js 开发微信小程序的前端框架.使用此框架,开发者将得到完整的 Vue.js 开发体验,同时为 H5 和小程序提供了代码复用的能力.如果想将 H5 项目改造为小程 ...
- 小程序开发提示没有npm路径_百度小程序三个框架的各自的特点
小程序跨平台解决方案方面有Taro.Mpvue.WePY这3个平台,他们各有特点,优势不相上下,他们也在不断不停的迭代更新,都拥有大量的开发者支持,百度也拥抱三方框架,跟他们一起合作,来同步促进小程序 ...
- 原生开发小程序 和 wepy 、 mpvue 对比
原生开发小程序 和 wepy . mpvue 对比 本文横向对比.探讨了下原生开发小程序,和目前比较热门的 wepy .mpvue 开发小程序三种方式的优势和劣势:由于三者的篇幅都比较多,本文只是简单 ...
- c++小程序代码_# 微信小程序的原生框架和taro对比 ##
微信小程序的原生框架和taro对比 小程序历史(为什么会出现?) 2007年 iPhone H5 大家知道现在手机端主要是iOS.Android两大系统,实际上在早期有3大系统竞争,还有一个就是诺基亚 ...
最新文章
- matplotlib subplot画子图
- Fedora配置网络DHCP
- 10000 字讲清楚 Spring Boot 注解原理
- java设置项目根目录 工作目录 working dictionary
- java controller json_springMVC的controller层接收前端json数据
- gossip 区块链_区块链中的P2P
- 元宵节电商促销活动首页PSD分层模板
- 全球11大免费GIS数据源在此,速速来取!
- 关于lua加密luac的有关问题
- k折交叉验证优缺点_为什么要用交叉验证
- AJAX聊天室实现原理 JQuery+PHP
- TestCenter Layer4-7分析
- 快速定位到上次编辑位置
- python迭代器 for循环
- 认真学习数据结构之B/B+/B*树
- NumPy-创建adarray
- 三猿开泰,走进普通、文艺、2B程序猿的逗比世界
- Sentinel demo
- html 组件化 编辑器,V14.0发布:组件化编辑器+数据透视表
- u-boot编译与烧录(二)
热门文章
- 苏州大学电子信息学院C语言,电子信息学院
- windows10更新体验windows11
- 网络四层、七层负载均衡的区别
- 解决微信公众号OAuth出现40029(invalid code,不合法的oauth_code)的错误
- 项目管理学习——第一课:概述
- 基于linux epoll网络编程细节处理丨epoll原理剖析
- 18 矩阵——矩阵的秩、行阶梯形矩阵与秩、行列式与秩、特征值与秩、二次型与秩、矩阵秩的计算、关于秩的常用结论
- EasyTouch学习之QuickBase
- 在 Overleaf 中使用 ployglossia 和 fontspec 来进行多语言输入
- java.强引用软引用,java 强引用、软引用、弱引用、虚引用-Go语言中文社区