一、基础知识(目录与配置)

  (1)标签

    小程序的view相当于HTML的div标签一样,作占位

  (2)每一个页面都需要在app.json里面注册,例如:

  1. {  
      {
  2.     "pages": [
  3.     "pages/posts/posts",
  4.     "pages/welcome/welcome"
  5.   ]
  6. }

  优先需要启动显示的页面放在第一位,该例子会先显示posts.wxml

  (3)每一个页面对应一个目录,且目录下的文件名要一样

  (4)app.json可以配置所有属性,而页面目录下的json只能配置window属性,所以在页面文件夹的json文件只需写需要配置的信息,不许要加上window

  (5)配置全局变量   

    ①在app.js添加全局值
      globalData: {
        douBan:"https://api.douban.com"
      }
    ②在需要调用的js引入全局值
      var app=getApp();
    ③获取具体指
      app.globalData.douBan

二、常用属性

  (1)数据绑定

    ①定义参数值

  1.     this.setData({
  2. postdata: postData
  3. });

    ②调用参数值

    普通的获取绑定数据格式{{data}},而凡是标签属性都要加引号wx:if="{{post_data}}",

  (2)If根据变量控制标签显示或隐藏:

    在具体标签里面加wx:if="{{img_condition}}",condition是数据绑定为布尔值

  (3)For循环渲染数据:

    ①后台返回数据格式如下:  

  1.       post_data=[
  2. {
  3. date: "Sep 12 20",
  4. title: "我是谁!",
  5. },
  6. {
  7. date: "Dec 10 02",
  8. title: "你是谁!",,
  9. }
  10. ];

    ②小程序调用如下:

  1. <block wx:for="{{post_key}}" wx:for-item="item" wx:for-index="idx"></block>

  (4)事件绑定:

     ①在点击标签加上

  1. bindtap='onTap'

     ②js里面编写 onTap函数

  1. onTap:function(){
  2. console.log("点击了")
  3. },

  (5)页面跳转和传参:

    ①存在子父关系,可返回

  1. wx.navigateTo({
  2. url: '../posts/posts?postid='+postid,
  3. })

    而此时会触发生命周期的onhide函数

    ②不存在关系,不可返回

  1. wx.redirectTo({
  2. url: '../posts/posts?postid='+postid,
  3. })

    而此时会触发onunload函数

  (6)事件冒泡与非冒泡

    冒泡事件:当一个组件上的事件被触发后,该事件会向父节点传递。
    非冒泡事件:当一个组件上的事件被触发后,该事件不会向父节点传递
    子元素想要阻止父元素冒泡可以使用catchcap替换bindtap,一般都是用bindtap

三、模板template 

  ①编写模板,在post-item-template.wxml编写模板,格式如下:  

  1. <template name="postItem"> 内容 </template>

  ②引入模板,在页面的wxml头部引入模板,格式如下:

  1. <import src="posts-item/post-item-template.wxml" />

  ③添加模板,格式如下:

  1. <template is="postItem" data="{{item}}" />这里的is就是对应模板的name名称

  ④模板引入样式。格式如下

  1. @import "posts-item/post-item-template.wxss";

四、显示正在下拉效果

  1. wx.showNavigationBarLoading();

  

五、缓存(上限10M,会永久保存)

  ①设置缓存:

  1. wx.setStorageSync("test", {
  2.           game : "test",
  3.           deve : "wer"
  4. }) 

  ②获取缓存:

  1. wx.getStorageSync("test");

  ③清楚某个缓存:

  1. wx.removeStorageSync("test")

  ④清除所有缓存:

  1. wx.clearStorage()

微信小程序日记(一)的更多相关文章

  1. 微信小程序开发日记——高仿知乎日报(下)

    本人对知乎日报是情有独钟,看我的博客和github就知道了,写了几个不同技术类型的知乎日报APP 要做微信小程序首先要对html,css,js有一定的基础,还有对微信小程序的API也要非常熟悉 我将该 ...

  2. 微信小程序开发日记——高仿知乎日报(中)

    本人对知乎日报是情有独钟,看我的博客和github就知道了,写了几个不同技术类型的知乎日报APP要做微信小程序首先要对html,css,js有一定的基础,还有对微信小程序的API也要非常熟悉 我将该教 ...

  3. 微信小程序开发日记——高仿知乎日报(上)

    本人对知乎日报是情有独钟,看我的博客和github就知道了,写了几个不同技术类型的知乎日报APP 要做微信小程序首先要对html,css,js有一定的基础,还有对微信小程序的API也要非常熟悉 我将该 ...

  4. 微信小程序爬坑日记

    新公司上手小程序.30天,从入门到现在,还没放弃... 虽然小程序发布出来快一年了,爬坑的兄弟们大多把坑都踩平了.而我一直停留在"Hello World"的学习阶段.一来没项目,只 ...

  5. 微信小程序开发踩坑日记

    2017.12.29  踩坑记录 引用图片名称不要使用中文,尽量使用中文命名,IDE中图片显示无异样,手机上图片可能出现不显示的情况. 2018.1.5  踩坑记录 微信小程序设置元素满屏,横向直接w ...

  6. 微信小程序踩坑日记1——调用微信授权窗口

    0. 引言 微信小程序为了优化用户体验,取消了在进入小程序时立马出现授权窗口.需要用户主动点击按钮,触发授权窗口. 那么,在我实践过程中,出现了以下问题. . 无法弹出授权窗口 . 希望在用户已经授权 ...

  7. 微信小程序导航:官方工具+精品教程+DEMO集合(1月7更新)

    1:官方工具:https://mp.weixin.qq.com/debug/w ... tml?t=14764346784612:简易教程:https://mp.weixin.qq.com/debug ...

  8. 微信小程序实例源码大全

    微信小程序实例源码大全下载 微信小应用示例代码(phodal/weapp-quick)源码链接:https://github.com/phodal/weapp-quick 微信小应用地图定位demo( ...

  9. 微信小程序开源项目库汇总

    最近做了一个微信小程序开源项目库汇总,里面集合了OpenDigg 上的优质的微信小程序开源项目库,方便移动开发人员便捷的找到自己需要的项目工具等,感兴趣的可以到GitHub上给个star. UI组件 ...

随机推荐

  1. python第二课——数据类型1

    day02(上午)主要讲了进制问题,小编之前已经发过了 day02(下午): 1.数据类型: 分类: 1).整数型:int浮点型(小数):float布尔型(True/False):bool 2).字符 ...

  2. PHP常用功能块_错误和异常处理 — php(32)

    一.错误和异常处理 1.1 错误类型和基本的调试方法PHP程序的错误发生一般归属于下列三个领域: 语法错误:语法错误最常见,并且也容易修复.如:代码中遗漏一个分号.这类错误会阻止脚本的执行. 运行时错 ...

  3. virtualbox+vagrant学习-2(command cli)-16-vagrant snapshot命令

    Snapshot快照 这是用于管理客户机器快照的命令.快照记录客户计算机的时间点状态.然后可以快速恢复到此环境.这可以让你进行试验和尝试,并迅速恢复到以前的状态. 快照并不是每个provider都支持 ...

  4. 图片保持比例,padding的妙用

    要保持图片的比例不变 这一张图片在不同分辨率(1980px, 1364px,移动端400px)下均保持了一定的比例不变. 方法: padding以及margin的上下(margin-top | mar ...

  5. django用户验证机制

    django的验证机制 from django.contrib.auth.decorators import login_required 需要在要验证的界面添加`@login_required` 登 ...

  6. 正则表达式利用grep和sed处理日志内容,获取所需的内容

    app.log文件内容: 2014-09-11 00:00:01,516 INFO [com.tt.bb.thread.Control] - Socket连接:/182.105.83.33:53217 ...

  7. P3133 [USACO16JAN]无线电联系Radio Contact

    题目描述 Farmer John has lost his favorite cow bell, and Bessie the cow has agreed to help him find it! ...

  8. bat 数组实现

    bat中没有数组的概念,可以通过有[]的多个变量来存储一组值 @echo off & setlocal enabledelayedexpansion .txt) do ( echo %%b e ...

  9. C++ - 类的虚函数\虚继承所占的空间

    类的虚函数\虚继承所占的空间 本文地址: http://blog.csdn.net/caroline_wendy/article/details/24236469 char占用一个字节, 但不满足4的 ...

  10. Linux下如何查看分区文件系统类型

    1,fdisk -l fdisk -l 只能列出硬盘的分区表.容量大小以及分区类型,但看不到文件系统类型. 2,df -h df 命令是用来查看文件系统磁盘空间使用量的.但df 命令只会列出已挂载的文 ...