微信小程序组件化实践】的更多相关文章

Do Not Repeat Yourself 如何提高代码质量,方法有许多:抽象.模块.组件化,我认为它们的中心点都是--Do Not Repeat Yourself. 小程序组件化 我们先看看小程序自带的组件化能力: 模板,通过 <import src="../name.wxml" /> 引入 ---- success 样式,通过 @import 'name.wxss' 引入 ---- success js ??? ---- fail 我们看到,微信小程序开发有一个很大的…
本文来自于腾讯Bugly公众号(weixinBugly),未经作者同意,请勿转载,原文地址:http://mp.weixin.qq.com/s/2nQzsuqq7Avgs8wsRizUhw 作者:Gcaufy 导语 Bugly 之前发了一篇关于微信小程序的开发经验分享(点击阅读),小伙伴们在公众账号后台问了很多关于小程序开发方面的问题,精神哥在查阅相关内容的时候,发现了龚澄同学自己写了一个小程序开发框架,真的怒赞,赶紧安利给大家. 同时,如果大家有关于小程序的相关问题,可以在评论区留言,我们整理…
wepy-CLI 安装 npm install -g wepy-cli wepy init standard my-project https://github.com/Tencent/wepy 特性: 类Vue开发风格 支持自定义组件开发 支持引入NPM包 支持Promise 支持ES2015+特性,如Async Functions 支持多种编译器,Less/Sass/Stylus/PostCSS.Babel/Typescript.Pug 支持多种插件处理,文件压缩,图片压缩,内容替换等 支持…
作者:龚澄 导语 性能调优是一个亘古不变的话题,无论是在传统H5上还是小程序中.因为实现机制不同,可能导致传统H5中的某些优化方式在小程序上并不适用.因此必须另开辟蹊径找出适合小程序的调估方式. 本文旨在介绍两点在小程序开发过程当中碰到的一些性能问题以及 WePY 的一些优化方案. 小程序组件化框架 WePY 介绍请阅读:<打造"微信小程序"组件化开发框架> 预先加载 原理 传统H5中也可以通过预加载来提升用户体验,但在小程序中做到这一点实际上是可以更简单方便却又更容易被忽…
wepy是一个优秀的微信小程序组件化框架,突破了小程序的限制,支持了npm包加载以及组件化方案.这里就以我个人的经历讲下怎么创建wepy项目. 1.首先 在桌面(自己选定目录下)新建一个文件夹,注意需要使用英文名. 2.Cmd中  进入到该文件目录下 3.安装 wepy 命令行工具. cmd中输入: npm install wepy-cli -g 4.在开发目录生成开发DEMO. cmd中输入: wepy new myproject myproject是自己创的文件名可以更改. 图片这里看到他提…
资源连接: WePY | 小程序组件化开发框架 WePYAWESOME 微信小程序wepy开发资源汇总 文档 GITHUB weui WebStorm/PhpStorm 配置识别 *.wpy 文件代码高亮显示   1. 打开Settings,搜索Plugins,搜索Vue.js插件并安装.   2. 打开Settings,搜索File Types,找到Vue.js Template,在Registered Patterns添加*.wpy,即可高亮.…
微信小程序组件设计规范 组件化开发的思想贯穿着我开发设计过程的始终.在过去很长一段时间里,我都受益于这种思想. 组件可复用 - 减少了重复代码量 组件做为抽离的功能单元 - 方便维护 组件作为template使用,可以方便计算各种属性而不是在wxml引入wxs 在日常的小程序开发组件过程中,我一般会遵循如下几个规则: 1.样式独立 & 依赖独立 在组件开发过程中,组件可以依赖于全局样式,组件在引入时,使用该页面样式和全局样式共同渲染. options: { addGlobalClass: tru…
微信小程序组件使用手册地址: 1. 百度搜索"微信公众平台",扫码登录之后,点击帮助文档里面的普通小程序. 2. 接着选择"开发"-->"组件" 3. 左侧可以根据需要查询自己需要使用的控件 那么接下来就写一个简单的注册页面. 1. New Folder(reg) --> New Page(reg) 2. 修改reg.wxml文件 <!--miniprogram/pages/reg/reg.wxml--> <view…
这可能是一个java程序员最不务正业的一次分享了. 小程序的火热相信不用我多说了,年初的时候老婆去浦东某达面试,甚至都被问有没有小程序测试经验.俨然小程序成为了互联网公司自PC,WAP,安卓,IOS之后又一不可或缺的入口.正好这段时间公司也在做一款小程序,于是顺便也学习了一把.当然因为我是一个后端猿,自然是以后端的视角来谈谈,肯定和前端的同学还是比不上的. 学习小程序,我认为对于后端同学还是比较有优势的,因为后端同学对于HTML,CSS以及JS这些前端基本知识还是有所涉猎的,而前端的同学对于后端…
1. 获取微信小程序的 AppID 登录 https://mp.weixin.qq.com ,就可以在网站的"设置"-"开发者设置"中,查看到微信小程序的 AppID 了,注意不可直接使用服务号或订阅号的 AppID . 注意:如果要以非管理员微信号在手机上体验该小程序,那么我们还需要操作"绑定开发者".即在"用户身份"-"开发者"模块,绑定上需要体验该小程序的微信号.本教程默认注册帐号.体验都是使用管理员…
一.序 上一篇介绍了如何从零开发微信小程序,博客园审核变智障了,每次代码都不算篇幅,好好滴一篇原创,不到3分钟从首页移出来了.这篇介绍一下组件封装和我的踩坑历程. 二.封装微信小程序可复用组件 首先模块化的思想是通用的,在这不做过多解释了.直接上代码,然后解释代码: // wxml <view class="c-menu"> <view wx:for="{{menuList}}" wx:key="{{item}}" class=…
父子通信 在子组件的对应js中 properties:{ prop名字:数据类型, prop名字:{ type:数据类型, value:默认值 } } 在父组件的wxml模板中找到子组件标签 <子组件 prop名字=‘值’></子组件> 2.子父通信 在子组件对应的元素身上绑定原生事件 <button bindtap = 'tapHandler'></button> // 在函数中,触发自定义事件 tapHandler(){ this.triggerEven…
目前在做的小程序需要使用到map组件以及小程序个性地图,涉及到的功能如下: 1# 获取用户当前位置,返回对应的省市区 2# 根据目的地的具体地址,显示在地图中的位置 3# 根据用户当前位置,计算出 与 接口返回的目的地数组中每条地址的相距距离 以下是具体实现过程: 1:申请开通个性化地图能力 个性化地图能力可在小程序后台“设置-开发者工具-腾讯位置服务”申请开通 对应的小程序后台的截图(已申请成功):  2:申请开发者key及所需腾讯位置服务相关产品 微信小程序LBS解决方案地址:https:/…
在上篇文章组件(一)里已经讲解了如何创建一个项目,现在继续...讲解一个页面布局以及各个组件的使用.在学习过程中,发现小程序支持flex布局,这对于学习过react native的人来说太好了,布局方面不用担心了.下面来看tab的创建 在使用微信小程序编译代码的工具时,快捷键的使用必不可少,所有快捷键在这里有讲解:小程序编译器快捷键 1.根据我上篇文章介绍,有讲如何创建一个小程序项目,效果如图所示: 2.之前讲解过app.json里是定义全局的一些东西,包括整体颜色风格,路由等等,详细配置讲解见…
progress进度条组件说明: 进度条,就是表示事情当前完成到什么地步了,可以让用户视觉上感知事情的执行.progress进度条是微信小程序的组件,和HTML5的进度条progress类似. progress进度条组件示例代码运行效果如下: 下面是WXML代码: [XML] 纯文本查看 复制代码 ? 1 2 3 4 5 <!--index.wxml--> <view class="content">     <text class="con-t…
text文本组件说明: text 文本就是微信小程序中显示出来的文本. text文本组件的示例代码运行效果如下: 下面是WXML代码: [XML] 纯文本查看 复制代码 ? 1 2 3 4 <view > <text>我是文本组件</text> </view> <text>{{text}}</text> 下面是JS代码: [JavaScript] 纯文本查看 复制代码 ? 01 02 03 04 05 06 07 08 09 10 1…
组件生命周期函数链接地址:https://developers.weixin.qq.com/miniprogram/dev/framework/custom-component/lifetimes.html 微信小程序中使用方法传递参数 错误写法: <view bindtap='btn_button(index)> 父级 </view> 正确写法 <view bindtap='btn_button' data-str="参数"> 父级 </vi…
了解知识点 DOM模型是一个树形结构,在DOM模型中,HTML元素是有层次的.当一个HTML元素上产生一个事件时,该事件会在DOM树中元素节点与根节点之间按特定的顺序传播,路径所经过的节点都会收到该事件,这个传播过程就是DOM事件流. JS冒泡事件:当一个元素上的事件被触发的时候,比如说鼠标点击了一个按钮,同样的事件将会在那个元素的(所有祖先元素)中被触发.这 一过程被称为事件冒泡:这个事件从原始元素开始一直冒泡到DOM树的最上层 共同点 在微信小程序的事件机制中,bindtap和catchta…
背景 在学习微信小程序开发wxml页面时,需要使用if,else来判断组件是否进行展示,代码如下 <view wx:if="{{is_login==1}}">成功登录</view> <view wx:elseif="{{is_login==2}}">登录失败2</view> <view wx:else>登录失败3</view> 结果出现错误如下 经过研究,原来是没有wx:elseif这个用法的,…
通过微信小程序中丰富的表单组件来完成登录界面.手机快速注册界面.企业用户注册界面的微信小程序设计. 将会用到view视图容器组件.button按钮组件.image图片组件.input输入框组件.checkbox多项选择器组件.switch开关选择组件.navigator页面连接组件等. Ⅰ.登录设计 登录表单中,需输入账号.密码进行登录,在账号.密码输入框中都有友好的提示信息:登录按钮默认是灰色不可用状态,只有输入内容后,才会变为可用状态:在登录按钮下面提供手机快速注册.企业用户注册.找回密码链…
本文为霍格沃兹测试学院测试大咖公开课<微信小程序自动化测试>图文整理精华版. 随着微信小程序的功能和生态日益完善,很多公司的产品业务形态逐渐从 App 延升到微信小程序.微信公众号等.小程序项目页面越来越多,业务逻辑也越来越复杂,全手工测试已无法满足快速增长的业务需求. 然而,由于小程序本身的一些特性,导致业界目前缺乏成熟完善的解决方案,总会出现各种问题(包括腾讯微信官方提供的自动化工具).如何做好小程序的自动化测试就成为测试同学当下普遍面临的一个痛点难题. 本节课就主要分享下微信小程序自动化…
封装一个弹窗组件 1.新建component文件夹存放我们的组件,里边存放的就是我们所用的组件,我们今天要做的事弹出框,新建文件夹popup存放我们的组件模板,点击右键选择新建component,就会自动生成组件的模板wxss.wxml.json.js,如图: 2.我们可以写一些组件样式和布局,跟页面写法类似,我就不多说了,直接把代码贴出 : popup.wxml <view class="wx-popup" hidden="{{flag}}"> <…
一.摘要 组件是小程序整个语法中占比比较大的一部分,没写过组件可以说只懂了半个小程序.组件提供了类似页面的生命周期与逻辑.相比于模板,组件能实现的功能更加全面,也更为强大.通过slot可以自由扩展组件,使组件更具有扩展性,使用起来也不会有太大的局限性.要说不足之处:在目前最新的2.4版本都不能实现组件的自定义数据.而且组件的使用还存在着一些bug. 二.正文 组件的相关说明官方文档已经写得十分清除,这里只对写组件的相关技巧进行探讨. 小程序为组件提供了一些配置字段,在相对于的字段添加自己的代码可…
微信自带的编辑器操作起来各种不顺手,调试的时候需要用到,但是编辑的时候还是用自己熟悉的编辑器好一点. 将文件目录导入到sublime,在sublime编辑保存后,回到小程序开发工具刷新页面即可. 下面分享一款sublime适用的小程序代码补全插件: https://github.com/Abbotton/weapp-snippet-for-sublime-text-2-3 根据提示操作后重启sublime,输入wa 即可出现提示,回车: 即可看到:   更多的就等大家自己去发现了…
view组件:小程序使用最多的组件.可以理解为 div: Text组件:用于展示文字.可以理解为 p span 标签.(除了Text组件以外的其他组件都无法被长按选中) Text组件无法解析HTML,也就是无法对HTML文件进行渲染(所以小程序无法开发一些富文本的东西) Text组件里面:使用 /n 来作为换行符号.…
接着之前讲解的基础内容,应该对小程序有了一点了解.想深入了解的话,需要自己实际操作一遍比较好.首先了解官方给的组件,API等这样等顺序来比较好一些.下面贴两张demo图,demo的项目结构是设置的两个tab页面,第一个tab讲解组件,第二个tab讲解API.现在跟着官网教程,仿照官方demo来写一个小程序吧. 1.建立项目,命名为"wxTestOne",首先建立一个空文件夹: 2.添加项目: 3.点击“确定”按钮之后,效果如图所示,项目所需基本文件自动生成:…
开源免费插件,diy特有的页面机制,搭配30+自定义组件,让你的站点每一个页面都可以完全自定义,可无缝对接任意小程序,如有疑问加入qq壹度小程序交流群:302866773:或wx:liu2417301781. 配置 1.在app.json中配置插件参数 "plugins": { "myPlugin": { "version": "1.0.1", "provider": "wx0c1e00758a9…
  icon图标组件说明: icon是一种图标格式,用于系统图标.软件图标等,这种图标扩展名为.icon..ico.常见的软件或windows桌面上的那些图标一般都是ICON格式的.在应用上面很多地方用到了icon图标,这样方便程序表述程序返回的操作状态,用户一眼就能看出应用返回的意思,提高用户体验,在小程序的组件提供了常用的icon图标,详细使用看下面介绍! icon图标组件用法说明: 在使用的icon的时候,使用icon标签,然后有type属性和size属性, 具体的属性看最后的属性总结,标…
组件 小程序允许我们使用自定义组件的方式来构建页面 类似Vue的小组件 自定义组件 类似于页面,一个自定义组件由 json, wxml, wxss, js 4个文件组成 1.创建 1.创建components文件夹 2.在components文件下创建comp1文件夹 3.comp1 文件夹下创建Component文件 2.声明组件 首先需要在 json 文件中进行自定义组件声明 { "component": true, // 会自动生成 } 3.辑组件 与其他页面一样 在 wxml …
js文件 'use strict'; let choose_year = null,   choose_month = null; const conf = {   data: {     hasEmptyGrid: false,     showPicker: false   },   onLoad() {     const date = new Date();     const cur_year = date.getFullYear();     const cur_month = da…