獲取當前點擊的組件信息:
e.target,如果需要組件存數據,可以指定data-NAME屬性,然後通過基礎事件中e.target.dataset.NAME 獲取,如果是自定義事件在e.detail中獲取
template組件,用來定義模板,用法:
數據:
date:{
user:{tit:'linge'}
}
編寫模板組件:
<template name="student">
<text>{{tit}}<text>
</template>
使用模板:
<template is="student" data={{…user}}></template>
WXML提供兩種文件引用方式import
和include:
import有作用域的概念,即只會import目標文件中定義的template,而不會import目標文件import的template,使用絕對路徑。
include
可以將目標文件除了<template/>
的整個代碼引入,相當於是拷貝到include
位置。
頁面導航:
總結navigator 和 各種跳轉API的區別:
wx.navigateTo 用於保留當前頁面、跳轉到應用內的某個頁面,使用 wx.navigateBack可以返回到原頁面。對於頁面不是特別多的小程序,通常推薦使用 wx.navigateTo進行跳轉, 以便返回原頁面,以提高加載速度。當頁面特別多時,則不推薦使用。
wx.redirectTo 當頁面過多時,被保留頁面會擠佔微信分配給小程序的內存,或是達到微信所限制的 5 層頁面棧。這時,我們應該考慮選擇 wx.redirectTo。wx.redirectTo()用於關閉當前頁面,跳轉到應用內的某個頁面。這樣的跳轉,可以避免跳轉前頁面佔據運行內存,但返回時頁面需要重新加載,增加了返回頁面的顯示時間。
wx.reLaunch 與 wx.redirectTo()的用途基本相同, 只是 wx.reLaunch()先關閉了內存中所有保留的頁面,再跳轉到目標頁面。
wx.switchTab 對於跳轉到 tab bar 的頁面,最好選擇 wx.switchTab(),它會先關閉所有非 tab bar 的頁面。其次,也可以選擇 wx.reLaunch(),它也能實現從非 tab bar 跳轉到 tab bar,或在 tab bar 間跳轉,效果等同 wx.switchTab()。使用其他跳轉 API 來跳轉到 tab bar,則會跳轉失敗。
wx.navigateBack 用於關閉當前頁面,並返回上一頁面或多級頁面。
跳往tabbar頁面的都不能在url中連接參數,可決辦法:在app.js中定義globalData: {},用的時候,getApp().globalData