1、

备注:并不是真的不需要下载,只是下载的包小于1MB,给人的感觉像是不用下载

2、

3、

理论上:同一级可以有无限个,纵向只能有五级

目前小程序分包大小有以下限制:

  • 整个小程序所有分包大小不超过 8M
  • 单个分包/主包大小不能超过 2M

4、view组件相当于div,没有什么特殊含义

小程序里面,只要包裹在<text>组件里面的文字,才可以在手机上长按选中

5、建议设计师做小程序的图时,以Iphone6 750大小,这样大小就是设计图里的大小,单位为rpx

6、如果是静态不改变的样式,要放到wxss,如果是动态的,要放到style里面

7、通用的css代码写在app.wxss里面

8、

这一块是小程序给留下的导航栏,颜色要自己定义,在app.json里面

https://mp.weixin.qq.com/debug/wxadoc/dev/framework/config.html

9、如果要单独给text内部设置样式,可以在text里面再包裹个text

10、如何把图片放进小程序的项目里,可以找到小程序代码所在的文件夹,直接复制进去

11、

备注:不是所有的单位都适合用rpx,记住,rpx实惠自适应改变的,比如一些文字的大小,就可以用px

12、微信小程序里面,缓存的最大为10MB,所以不要把所有的数据都缓存

13、微信数据绑定,是单向数据绑定

14、

this.setData()相当于把上面的对象放到data中,与下面的相似

15、for循环

 onLoad:function (options) {
var posts_content = [
{
title: '',
image1: '../../images/1.jpg'
},
{
title: '',
image1: '../../images/2.jpg'
}
]
this.setData({
posts_key: posts_content
})
 <block wx:for="{{posts_key}}" wx:for-item="item">
<view>
<image src="{{item.image1}}"></image>
<title>{{item.title}}</title>
</view>
6 </block>

页面for循环的时候,一定要用<block>包括

15、

冒泡事件的解决办法:使用catchtap代替bindtap

https://mp.weixin.qq.com/debug/wxadoc/dev/framework/view/wxml/event.html

16、template模板

https://mp.weixin.qq.com/debug/wxadoc/dev/framework/view/wxml/template.html

 name必须的
<template name="postItem">
<view>
<image src="{{image1}}"></image>
<title>{{title}}</title>
</view>
</template>

使用template的时候,在使用的页面用import引入

 <import src="post-item/post-item-template.wxml"/>
 <block wx:for="{{posts_key}}" wx:for-item="item">
<template is="postItem" data="{{...item}}"/> //数据原来是对象格式的,...表示把数据平铺开了,这样在template里面,就可以不用item.属性这样获取了
</block>

备注:is和template里面的name一致,data是要传递到template里的数据

如果引入的是样式,那就需要用@import

微信小程序的template知识实现了模板化(只能复用html和css),没有像vue一样实现模块化(可以复用html、css和js)

17、事件参数

https://mp.weixin.qq.com/debug/wxadoc/dev/framework/view/wxml/event.html

 // data-postId就是要传递的参数
<view catchtap="onPsotTap" data-postId="{{item.postid}}">
<template is="postItem" data="{{...item}}"/>
</view>
  onPsotTap:function (event) {
console.log(event.currentTarget.dataset.postid)
}

获取的时候要这样:event.currentTarget.dataset.postid

dataset是当前组件上由data-开头的自定义属性组成的集合

postid为什么是postid而不是postId,因为会自动改变,把大写的全部变成小写,把---链接的,变成驼峰命名

例子:postId 变成postid   post-id-tt 变成postIdTt

18、缓存https://mp.weixin.qq.com/debug/wxadoc/dev/api/data.html

19、wx.showToast() 相当于confim

wx.showModal() 相当于模态弹窗

https://mp.weixin.qq.com/debug/wxadoc/dev/api/api-react.html

20、this指代函数执行上下文环境

21、在使用了缓存后,有时候会出现一些奇怪的问题,这都是缓存引起的

调试里面的缓存清除:工具--清除缓存

真机里面,需要写个按钮,调用wx.clearStorage

22、微信小程序里面,由于在app.json的pages里面进行了配置,所以在html引入图片时,可以直接使用绝对路径

23、event对象中target和currentTarget的区别

https://www.cnblogs.com/yewenxiang/p/6171411.html

https://www.jianshu.com/p/1dd668ccc97a

target返回触发事件的元素

currentTarget返回绑定事件的元素

例:

   <ul>
<li>hello </li>
<li>hello </li>
<li>hello </li>
<li>hello </li>
</ul>
<script>
var ul = document.querySelectorAll('ul')[];
var aLi = document.querySelectorAll('li');
ul.addEventListener('click', function (e) {
var oLi1 = e.target
var oLi2 = e.currentTarget
console.log(oLi1)
console.log(oLi2)
})
</script>

24、tab选项卡

https://mp.weixin.qq.com/debug/wxadoc/dev/framework/config.html

跳转到有tab页面的的时候,要用wx.switchTab()

25、一种js写法,同一个方法,因为参数不同,返回不同的值

  var readyData = {};
readyData[settedKey] = {
categoryTitle: categoryTitle,
movies: movies
}

26、小程序里面的方法请求是异步的,在wxml绑定的对象,要先在data里面定义

  // 为什么这里要定义inTheaters、comingSoon、top250这三个对象
// 因为下面的请求是异步的,如果不嫌定义,wxml页面会报错
data: {
inTheaters: {},
comingSoon: {},
top250: {},
searchResult: {},
containerShow: true,
searchPanelShow: false
},

27、微信小程序生命周期

https://mp.weixin.qq.com/debug/wxadoc/dev/framework/app-service/app.html

 onLoad:function (options) {
console.log("this is onLoad")
},
onShow:function () {
// 页面显示
console.log("this is onShow")
},
onReady:function () {
// 页面渲染完成
// 必须在onReady里面
console.log("this is onReady")
},
onHide:function () {
// 页面隐藏
console.log("this is onHide")
},
onUnload:function () {
// 页面关闭
console.log("this is onUnload")
}

微信小程序生命周期就是上面的这种,我们在设置导航条内容的时候,最好在onReady里面,这样做视为了防止后面的生命周期设置的内容覆盖前面的生命周期设置的内容

28、微信小程序里面是没有dom的,所以下拉刷新的时候,我们不能使用append把新获取的数据追加到之前的dom里面,只能把所有的数据重新setData一次

29、 https://mp.weixin.qq.com/debug/wxadoc/dev/api/ui.html#wxshownavigationbarloading

wx.showNavigationBarLoading():显示导航条加载动画

wx.hideNavigationBarLoading() :隐藏导航条加载动画。

30、滚动视图 scroll-view

https://mp.weixin.qq.com/debug/wxadoc/dev/component/scroll-view.html

31、音乐播放  https://mp.weixin.qq.com/debug/wxadoc/dev/api/media-background-audio.html#wxgetbackgroundaudioplayerstateobject

32、  https://mp.weixin.qq.com/debug/wxadoc/dev/component/image.html

image组件,对image的相关操作

33、微信小程序提供的图片预览

 <image class="movie-img" src="{{movie.movieImg}}" data-src="{{movie.movieImg}}" catchtap="viewMoviePostImg"/>

 viewMoviePostImg: function (e) {
var src = e.currentTarget.dataset.src;
wx.previewImage({
current: src, // 当前显示图片的http链接
urls: [src] // 需要预览的图片http链接列表
})
}

34、scroll-view组件不能和下拉刷新组件一起使用,解决办法:

https://zhuanlan.zhihu.com/p/24739728

微信小程序入门与实战的更多相关文章

  1. 微信小程序入门与实战 常用组件API开发技巧项目实战*全

    第1章 什么是微信小程序? 第2章 小程序环境搭建与开发工具介绍 第3章 从一个简单的“欢迎“页面开始小程序之旅 第4章 第二个页面:新闻阅读列表 第5章 小程序的模板化与模块化 第6章 构建新闻详情 ...

  2. 微信小程序入门与实战 从0到1进行细致讲解 涵盖小程序开发核心技能下载

    第1章 什么是微信小程序? 第2章 小程序环境搭建与开发工具介绍 第3章 从一个简单的“欢迎“页面开始小程序之旅 第4章 第二个页面:新闻阅读列表 第5章 小程序的模板化与模块化 第6章 构建新闻详情 ...

  3. 微信小程序入门与实战(最新完整版)教程

    微信小程序入门与实战(最新完整版) 如图地址:下载地址在底部 |- 第1章 什么是微信小程序? - 0 B |- 第2章 小程序环境搭建与开发工具介绍 - 0 B |- 第3章 从一个简单的“欢迎“页 ...

  4. 微信小程序入门到实战(1)-基础知识

    1.微信小程序介绍 微信小程序,简称小程序,英文名Mini Program,是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或搜一下即可打开应用. 1.1. 为什么是微信 ...

  5. 微信小程序入门三实战

    微信小应用借鉴了很多web的理念,但是其与传统的webApp.微信公共号这些BS架构不同,他是CS架构,是客户端的程序 小程序开发实战--豆瓣电影 项目配置 -在app.jsop中进行简单配置 --n ...

  6. 《微信小程序商城开发实战》笔者的新书,欢迎各位粉丝上京东购买

    作者图书京东链接,请点击------>>>    **微信小程序商城开发实战** 附京东真实评价截图: 编辑推荐 在当今移动互联网大潮中,微信应用凭借其庞大的用户基数和极强的用户黏性 ...

  7. 天河微信小程序入门《四》:融会贯通,form表单提交数据库

    天河在阔别了十几天之后终于又回来了.其实这篇文章里的demo是接着(天河微信小程序入门<三>)后面就做了的,但是因为最近在做别的项目,所以就偷懒没有发出来.放到今天来看,从前台提交数据到数 ...

  8. 天河微信小程序入门《三》:打通任督二脉,前后台互通

    原文链接:http://www.wxapp-union.com/forum.php?mod=viewthread&tid=505&extra=page%3D1 天河君在申请到https ...

  9. 天河微信小程序入门:阿里云tomcat免费配置https

    天河君在第一时间通过了微信小程序验证,开启了我的微信小程序之旅.因为天河君之前是一名后端狗,对前端不是很了解,所以几乎可以认为是从零开始学做微信小程序.也希望有志在微信小程序方向做点事情的朋友能够和我 ...

随机推荐

  1. [转帖]第二个显示屏上禁用Windows任务栏

    http://os.51cto.com/art/201812/589207.htm 这个过程非常简单,你可以在一分钟内摆脱第二个屏幕上的任务栏. 您需要做的就是按照以下步骤操作: --打开设置,然后转 ...

  2. [转帖]linux namespace 和cgroup lxc

    https://blog.csdn.net/xiaoliuliu2050/article/details/53443863 5.1 linux namespace 和cgroup lxc 2016年1 ...

  3. 使用AutoMapper实现Dto和Model的自由转换(上)

    在实际的软件开发项目中,我们的“业务逻辑”常常需要我们对同样的数据进行各种变换.例如,一个Web应用通过前端收集用户的输入成为Dto,然后将Dto转换成领域模型并持久化到数据库中.另一方面,当用户请求 ...

  4. 基于Maven构建Web项目

    1.下载Maven,并配置好环境变量 2.打开命令行窗口,输入以下命令构建Maven Web项目 mvn archetype:generate -DgroupId=com.hello -Dartifa ...

  5. Libre 6009 「网络流 24 题」软件补丁 / Luogu 2761 软件安装问题 (最短路径,位运算)

    Libre 6009 「网络流 24 题」软件补丁 / Luogu 2761 软件安装问题 (最短路径,位运算) Description T 公司发现其研制的一个软件中有 n 个错误,随即为该软件发放 ...

  6. python之旅:并发编程

    一 背景知识 顾名思义,进程即正在执行的一个过程.进程是对正在运行程序的一个抽象. 进程的概念起源于操作系统,是操作系统最核心的概念,也是操作系统提供的最古老也是最重要的抽象概念之一.操作系统的其他所 ...

  7. 前端常用功能记录(二)—datatables表格

    并不是所有的后台开发都有美工和前端工程师来配合做页面,为了显示数据并有一定的美感,jQuery的DataTables插件对于像我这样的前端菜鸟来说真是雪中送炭,当然对于专业的前端开发者来说它更是锦上添 ...

  8. Redis在window上安装

    转:https://www.cnblogs.com/M-LittleBird/p/5902850.html 在windows上启动RabbitMQ: 这是Redis的启动,需要制定配置文件,否则连接不 ...

  9. redis 中用正则找key

    获取 redis 中所有的 key 可用使用 *. redis 127.0.0.1:6379> KEYS * 1) "w3c3" 2) "w3c1" 3) ...

  10. OpenStack 存储服务 Cinder介绍和控制节点部署(十五)

    Cinder介绍 OpenStack块存储服务(cinder)为虚拟机添加持久的存储,块存储提供一个基础设施为了管理卷,以及和OpenStack计算服务交互,为实例提供卷.此服务也会激活管理卷的快照和 ...