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

  (1)标签

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

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

{  
  {
    "pages": [
    "pages/posts/posts",
    "pages/welcome/welcome"
  ]
}

  优先需要启动显示的页面放在第一位,该例子会先显示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)数据绑定

    ①定义参数值

    this.setData({
postdata: postData
});

    ②调用参数值

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

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

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

  (3)For循环渲染数据:

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

      post_data=[
{
date: "Sep 12 20",
title: "我是谁!",
},
{
date: "Dec 10 02",
title: "你是谁!",,
}
];

    ②小程序调用如下:

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

  (4)事件绑定:

     ①在点击标签加上

bindtap='onTap'

     ②js里面编写 onTap函数

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

  (5)页面跳转和传参:

    ①存在子父关系,可返回

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

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

    ②不存在关系,不可返回

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

    而此时会触发onunload函数

  (6)事件冒泡与非冒泡

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

三、模板template 

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

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

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

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

  ③添加模板,格式如下:

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

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

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

四、显示正在下拉效果

wx.showNavigationBarLoading();

  

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

  ①设置缓存:

wx.setStorageSync("test", {
          game : "test",
          deve : "wer"
}) 

  ②获取缓存:

wx.getStorageSync("test");

  ③清楚某个缓存:

wx.removeStorageSync("test")

  ④清除所有缓存:

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. DevExpress02、RibbonControl

    RibbonControl 常用操作 1.如何代码显示选中的页 ribbonControl1.SelectedPage = ribbonPage2; 2.如何绑定ApplicationMenus和Po ...

  2. angular 生命周期钩子 ngOnInit() 和 ngAfterViewInit() 的区别

    angular 生命周期钩子的详细介绍在 https://angular.cn/guide/lifecycle-hooks  文档中做了介绍. ngOnInit() 在 Angular 第一次显示数据 ...

  3. jQuery实现滚动时动态加载页面内容

    有些网站的网页内容不是一次性加载完毕的,而是在鼠标向下滚动时动态加载的,这是怎么做到的呢?看下面代码: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 ...

  4. 20165318 2017-2018-2 《Java程序设计》第七周学习总结

    20165318 2017-2018-2 <Java程序设计>第七周学习总结 目录 学习过程遇到的问题及总结 教材学习内容总结 第11章 JDBC与MySQL数据库 错题总结 第五周错题总 ...

  5. 4518: [Sdoi2016]征途

    Description Pine开始了从S地到T地的征途. 从S地到T地的路可以划分成n段,相邻两段路的分界点设有休息站. Pine计划用m天到达T地.除第m天外,每一天晚上Pine都必须在休息站过夜 ...

  6. Day6 重载构造

    带参数方法 [1]无参数,无返回值 void 方法名(){方法体:} [2]无参数,有返回值 int 方法名(){方法体:} [3]有参数,无返回值 void 方法名(int num){方法体:} [ ...

  7. Python文件和流

    #coding = utf-8 from pprint import pprint import fileinput #read(n) f = open(r'E:\test_dir\somefile. ...

  8. Python3的__new__进行构造类的实例化

    __new__方法 这个方法是用来生成类的实例 class Singleton(object): def __new__(cls,*args, **kwargs): ① if not hasattr( ...

  9. windows7使用Sphinx+PHP+MySQL详细介绍

    安装(Windows) 1.官方下载 Sphinx下载地址: 下载 2.解压并重命名 此处下载版本为3.0.3,将 sphinx 文件夹命名为sphinx 3.文件夹目录介绍 sphinx --api ...

  10. EF 解除属性映射到数据库中 NotMappedAttribute无效解决办法

    可以通过NotMappedAttribute标记模型某个属性可以使该属性不必映射到数据库. public class Unicorn { public int Id { get; set; } [No ...