一、设计
无需开发者开发的
1、小程序加载动画;
2、页面下拉刷新加载样式;
3、微信控件(拥有完整的操作反馈);如弹出框、通知、模态框。。。
 
建议用微信自己的
1、加载、反馈样式(全局、局部)
二、开发

1、注册小程序

在app.js中,通过app函数
App({
//生命周期
onLaunch:function(){},
onShow:function(){},
onHide:function(){}
})
 
2、注册页面
Page({
data:{},
onLoad:function(){},
onReady:function(){},
onShow:function(){},
onHide:function(){},
onUnload:function(){},
onPullDownRefresh(){},
onReachBottom(){}
})
 

3、配置页面

       在app.json的pages中写上自己的页面路径

 
4、页面路由
 
   1、不像react、vue那样需要单独的路由,小程序已经帮咱们集成了路由,依赖<navigator url=‘’></navigator> 进行页面跳转,js端也可用 wx.navigateTo({url:'',success:''})、wx.redirectTo(url:'',success:'');进行跳转
注意两者区别,前者在新页面打开(小程序只允许最多打开5层),后者则是覆盖之前的页面。
      2、对于全局的数据、页面的公共逻辑判断(如进入页面时的权限验证、登录判断),则可以卸载app.js中,其他页面中可以通过app.xxx方法获取
 
5、事件
  事件写法类似于vue和react组件的事件
  绑定事件用:bindtap、binglongtap
  阻止事件冒泡用:catchtap
 
6、支持import和include
 
<include src="header.wxml"/>
<view>body</view>
<include src="footer.wxml"/>
 
import是导入模板的
比如定义了一个模板
<!-- item.wxml  -->
<template name="item">
<text>{{text}}</text>
</template>
 
在index.wxml中引用
<import src="item.wxml"/>
<template is="item" data={{text:'foobar'}}/>
 
三、开发中遇到的问题
  1、 经测试无法导入第三方css,机制受到限制
  2、css 只能使用线上图片或者base64,无法使用本地图片(因为小程序有1兆的体积限制),除非是用image组件(此处image已经被小程序重写成了自定义组件而非原来的组件)
  3、每个页面的XXX.js不能为空,否则下面会出现  1. Forgot to add page route in app.json. 2. Invoking Page() in async task. 的错误
 
四、以下是本人总结的官方样例,在开发者工具中打开即可运行,样例代码在官方基础上稍作改动,如果对你有帮助请点star
  github地址:
  https://github.com/gitwujiaolong/xiaochengxu_demo.git
 样例图:

五、不重复造轮子之weui for小程序

github地址:
https://github.com/weui/weui-wxss.git

微信小程序开发总结的更多相关文章

  1. 《腾讯游戏人生》微信小程序开发总结

    为打通游戏人生擂台赛与线下商家的O2O衔接,同时响应时下日臻火热的微信小程序,项目团队决定也开发一款针对性的微信小程序,以此方便商家在我们平台入驻并进行擂台赛事的创建和奖励的核销,进一步推广擂台赛的玩 ...

  2. 微信小程序开发入门教程

    做任何程序开发要首先找到其官方文档,微信小程序目前还在邀请内测阶段,目前官方放出了部分开发文档,经过笔者一天的查看和尝试,感觉文档并不全面,但是通过这些文档已经能够看出其大概面貌了.闲话不多说,我们先 ...

  3. 微信小程序开发 -- 01

    微信小程序开发基础 -- 开发前的准备 缘由 1月9日张小龙微信小程序正式上线,因为微信,所以小程序从诞生开始就头戴巨大的光环,很多的团队,公司以及开发的个体都眼巴巴的盯着这个小程序.而那个时候我却在 ...

  4. 微信小程序开发 (资料汇总,谁还没被坑过?希望助你绕过一些坑)

    最近帮人家做一个微信小程序,刚好想熟悉一下.由于牵扯到多用户使用系统,以及数据共享,所以自然架构选择了,客户端和服务器的方式. 后台服务器是windows server,后台程序是.Net  WebA ...

  5. 零基础入门微信小程序开发

    注:本文来源于:<零基础入门微信小程序开发> 课程介绍 本达人课是一个系列入门教程,目标是从 0 开始带领读者上手实战,课程以微信小程序的核心概念作为主线,介绍配置文件.页面样式文件.Ja ...

  6. 微信小程序开发平台新功能「云开发」快速上手体验

    微信小程序开发平台刚刚开放了一个全新的功能:云开发. 简单地说就是将开发人员搭建微信小程序后端的成本再次降低,此文刚好在此产品公测时,来快速上手看看都有哪些方便开发者的功能更新. 微信小程序一直保持一 ...

  7. 微信小程序开发——开发者工具中素材管理功能使用的注意事项

    为什么使用“素材管理”: 微信小程序环境中本地资源图片是无法通过 WXSS 获取的,可以使用网络图片,或者 base64,或者使用<image/>标签.. 当然,如果不想这么麻烦,你可能会 ...

  8. 微信小程序开发学习资料

    作者:初雪链接:https://www.zhihu.com/question/50907897/answer/128494332来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明 ...

  9. 微信小程序开发及相关设置小结

    今年过年,主要看了<奇葩说>和<电锯惊魂>,很不错,好东西的确需要留出足够的时间来看,匆匆忙忙走马观花是对作者的不尊重.除此之外,就是研究了一下微信小程序开发,先说对小程序的看 ...

  10. 微信小程序开发中的二三事之网易云信IMSDK DEMO

    本文由作者邹永胜授权网易云社区发布. 简介 为了更好的展示我们即时通讯SDK强悍的能力,网易云信IM SDK微信小程序DEMO的开发就提上了日程.用产品的话说就是: 云信 IM 小程序 SDK 的能力 ...

随机推荐

  1. python中协程

    在引出协成概念之前先说说python的进程和线程. 进程: 进程是正在执行程序实例.执行程序的过程中,内核会讲程序代码载入虚拟内存,为程序变量分配空间,建立 bookkeeping 数据结构,来记录与 ...

  2. Resource governor2:Configuration query

    SQL Server Engine 当前使用的configuration,称作 In-memory configuration,使用DMV:sys.dm_resource_governor_XXX查看 ...

  3. 深入理解DOM事件机制系列第四篇——事件模拟

    × 目录 [1]引入 [2]模拟机制 [3]自定义事件 前面的话 事件是网页中某个特别的瞬间,经常由用户操作或通过其他浏览器功能来触发.但实际上,也可以使用javascript在任意时刻来触发特定的事 ...

  4. MySQL学习笔记十二:数据备份与恢复

    数据备份 1.物理备份与逻辑备份 物理备份 物理备份就是将数据库的数据文件,配置文件,日志文件等复制一份到其他路径上,这种备份速度一般较快,因为只有I/O操作.进行物理备份时,一般都需要关闭mysql ...

  5. scikit-learn 朴素贝叶斯类库使用小结

    之前在朴素贝叶斯算法原理小结这篇文章中,对朴素贝叶斯分类算法的原理做了一个总结.这里我们就从实战的角度来看朴素贝叶斯类库.重点讲述scikit-learn 朴素贝叶斯类库的使用要点和参数选择. 1. ...

  6. STL模板中的map的使用与例题

    最近的计分赛,记得自己的都只是过了两题.遇到了两次map,自己在寒假看了一点的map,只知道在字符串匹配的时候可以用的到.但是自己对map的使用还是不够熟练使用,这回在第一次和第二次的计分赛中都遇到可 ...

  7. GeoServer中利用SLD配图之矢量图层配图

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/. 1 背景 我们在ArcMap中可以直接通过symbol功能对图层进行定 ...

  8. H5基于iScroll实现下拉刷新,上拉加载更多

    前言 前一段有个手机端的项目需要用到下拉刷新和上拉加载更多的效果,脑海里第一反映就是微博那种效果,刚开始的理解有些偏差,以为下拉也是追加数据,上拉也是追加数据,后请教同事后发现其实下拉只是刷新最新数据 ...

  9. JS实现带复选框的下拉菜单

    这段时间在做后台的时候需要一个可以复选的下拉菜单,用到的是easyUI中的combo的Demo,先看看官方easyUI:http://www.jeasyui.com/documentation/ind ...

  10. 【原创】kafka admin源代码分析

    admin包定义了命令行的一些实现 一.AdminOperationException.scala 一个异常类,表示执行admin命令时候抛出的异常 二.AdminUtils.scala admin一 ...