一、基礎知識(目錄與配置)
(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()