微信小程序41~50

1.列表渲染-進階用法
  1. 如果要對默認的變量名和下標進行修改,可以使用wx:for-item和wx:for-index
    wx:for-item可以指定數組當前元素的變量名
    wx:for-index可以指定數組當前下標的變量名
  2. 將wx:for用在標簽上,以渲染一個包含多個節點的結構快
    并不是一個組件,僅僅是一個包裝元素,不會在頁面中做任何渲染,只接受控制屬性
    標簽在wxml中可以用于組織代碼結構,支持列表渲染、條件渲染等
fruitItem新的數組名,i是下標
<view wx:for="{{ fruitList }}" wx:key="id" wx:for-item="fruitItem" wx:for-index="i"><view>{{ fruitItem.name }}</view><view>{{ fruitItem.price }}</view>
</view><block wx:for="{{ fruitList }}" wx:key="id" wx:for-item="fruitItem" wx:for-index="i"><view>{{ fruitItem.name }}</view><view>{{ fruitItem.price }}</view>
</block>
2.條件渲染

用來控制頁面結構的展示和隱藏
有兩種方式:

  1. 使用wx:if、wx:elif、wx:else屬性組
  2. 使用hidden屬性

wx:if和hidden兩者的區別
wx:if 當條件為true時結構展現出來,否則不展示,通過移除/新增節點的方式來實現
hidden 當條件為true時會將結構隱藏,否則展示,通過idsplay樣式屬性來實現

<view wx:if="{{ num === 1 }}">num等于{{ num }}</view>
<view wx:elif="{{ num === 2 }}">num等于{{ num }}</view>
<view wx:else>num大于2,目前等于{{ num }}</view><button type="warn" bindtap="updateNum">更改num</button><view hidden="{{ !isFlag }}">如果isFlag是true,展示結構,否則隱藏結構</view>
3.小程序運行機制

在這里插入圖片描述

4.小程序更新機制

在訪問小程序時,微信會將小程序代碼包緩存到本地。

開發者在發布了新的小程序版本以后,微信客戶端會檢查本地緩存的小程序有沒有新版本,并進行小程序代碼包的更新。

小程序的更新機制有兩種:啟動時同步更新 和 啟動時異步更新

  1. 啟動時同步更新:微信運行時,會定期檢查最近使用的小程序是否有更新。如果有更新,下次小程序啟動時會同步進行更新,更新到最新版本后再打開小程序。如果 用戶長時間未使用小程序時,會強制同步檢查版本更新

  2. 啟動時異步更新:在啟動前沒有發現更新,小程序每次 冷啟動 時,都會異步檢查是否有更新版本。如果發現有新版本,將會異步下載新版本的代碼包,將新版本的小程序在下一次冷啟動進行使用,當前訪問使用的依然是本地的舊版本代碼

在啟動時異步更新的情況下,如果開發者希望立刻進行版本更新,可以使用 wx.getUpdateManager API 進行處理。在有新版本時提示用戶重啟小程序更新新版本。

App({
//onLaunch是小程序的鉤子函數,在冷啟動時肯定會執行到
//當小程序冷啟動時,會自動在微信后臺請求新版本,若有,立即下載onLaunch () {// 用wx.getUpdateManager()監聽下載狀態const UpdateManager = wx.getUpdateManager()//當下載完成新版本后,會觸發onUpdateReady回調函數UpdateManager.onUpdateReady(function () {//在回調函數中給用戶展示wx.showModal({title: '更新提示',content: '新版本已經準備好,是否重啟應用?',success (res) {if (res.confirm) {//強制使用新版本并強制重啟UpdateManager.applyUpdate()}}})})}
})
5.小程序生命周期介紹

應用生命周期是指應用程序進程從創建到消亡的整個過程。
小程序的生命周期指的是 小程序從啟動到銷毀的整個過程。

一個小程序完整的生命周期由 三部分來組成

  1. 應用生命周期
  2. 頁面生命周期
  3. 組件生命周期

小程序生命周期伴隨著一些函數,這些函數由小程序框架本身提供,被稱為生命周期函數,生命周期函數會按照順序依次自動觸發調用。

幫助程序員在特定的時機執行特定的操作,輔助程序員完成一些比較復雜的邏輯。

6.應用生命周期

就是小程序從被打開到被關掉的一個過程
啟動–>運行–>銷毀
應用生命周期伴隨著一些函數,我們稱為應用生命周期函數,它需要在app.js文件的App()方法中進行定義,用來注冊小程序
如果用戶是在被掛起三十分鐘再次訪問小程序,只會執行onShow函數,不會執行onLaunch函數
在這里插入圖片描述

從小程序生命周期的角度來看,我們一般講的啟動專指冷啟動,熱啟動一般被稱為后臺切前臺

6.頁面生命周期

指小程序頁面從加載–>運行–>銷毀的整個過程
頁面生命周期函數要在Page()方法進行定義
在這里插入圖片描述
onLoad和onReady只會觸發一次

8.生命周期兩個細節
  1. tabbar頁面之間相互切換,頁面不會被銷毀
  2. 點擊左上角,返回上一個頁面,會銷毀當前頁面
9.小程序API介紹

微信小程序提供原生API,可以方便的調起微信提供的能力如:獲取用戶信息,微信登錄,微信支付。
小程序提供的API幾乎都掛載在wx對象下,如:wx.request()、wx.setStorage(),wx對象實際上就是小程序的宿主環境微信所提供的全局對象。
在這里插入圖片描述
異步API支持callback&Promise兩種調用方式

  1. 當接口參數Object對象中不包含success/fail/compete是將默認返回Promise.
  2. 部分接口如 request, uploadFile 本身就有返回值,因此不支持 Promise 風格的調用方式,它們的 promisify 需要開發者自行封裝。
10.發起網絡請求

發起網絡請求獲取服務器的數據,需要使用wx.request()接口API
wx.request請求的域名必須在微信公眾平臺進行配置,如果使用wx.request()請求未配置的域名,會報錯

在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/87892.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/87892.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/87892.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

向量數據庫-Milvus快速入門

Milvus 概述 向量是神經網絡模型的輸出數據格式&#xff0c;可以有效地對信息進行編碼&#xff0c;在知識庫、語義搜索、檢索增強生成&#xff08;RAG&#xff09;等人工智能應用中發揮著舉足輕重的作用。 Milvus 是一個開源的向量數據庫&#xff0c;適合各種規模的人…

uniapp的光標跟隨和打字機效果

1、準備好容器文字的顯示textRef&#xff0c;以及光標的顯示 &#xff0c;使用transform-translate對光標進行移動到文字后面<template><view class"container" ref"contentRef"><u-parse :content"nodeText" ref"textRef&q…

「ECG信號處理——(21)基于Pan-Tompkins和隨機森林(RF)的睡眠呼吸暫停檢測算法」2025年7月4日

目錄 1、引言 2、數據庫介紹&#xff08;Apnea-ECG Database) 3、基于Pan-Tompkins和隨機森林&#xff08;RF&#xff09;的睡眠呼吸暫停檢測算法 3.1 算法概述 3.2 心電信號預處理及QRS波檢測算法 3.3 心電信號的隨機森林睡眠呼吸暫停識別 4、實驗結果 4.1 心電信號預處理及QR…

C++學習之STL學習:list的模擬實現

在上一篇學習了list的使用后&#xff0c;在本篇我們將通過模擬實現的方式深入了解list的底層運作原理。 作者的個人gitee&#xff1a;樓田莉子 (riko-lou-tian) - Gitee.com 感興趣的讀者可以看一看 目錄 前置準備 結點的定義 鏈表類的定義 迭代器 普通迭代器 const迭代器 …

不引入變量 異或交換的缺點

文章目錄選擇排序正確代碼交換兩個數位置的方法引入中間變量不引入中間變量&#xff0c;使用異或的方法錯誤原因優化代碼選擇排序正確代碼 // 數組中交換i和j位置的數public static void swap(int[] arr, int i, int j) {int tmp arr[i];arr[i] arr[j];arr[j] tmp;}// 選擇排…

VS Code中使用Git的方法:環境配置與Git操作

本文介紹在Windows電腦的VS Code中&#xff0c;配置Git環境并使用Git命令、功能的方法。 1 環境部署 首先&#xff0c;我們需要分別安裝Git環境與VS Code軟件。這里需要注意&#xff0c;即使是在VS Code中使用Git&#xff0c;也需要我們首先在電腦上單獨配置好Git的環境&#…

在 Windows 上安裝和運行 Apache Kafka

Apache Kafka是一款開源應用程序&#xff0c;用于實時處理海量數據流。Apache Kafka 是一個發布-訂閱消息系統。消息系統允許您在進程、應用程序和服務器之間發送消息。廣義上講&#xff0c;Apache Kafka 是一款可以定義主題并進行進一步處理的軟件。 下載和安裝 Apache Kafk…

【嵌入式電機控制#8】編碼器測速實戰

一、編碼器測速重要參數有刷電機編碼器參數&#xff08;其他的后面會慢慢提及&#xff0c;也可以在某寶看&#xff09;1. 編碼器分辨率&#xff08;PPR&#xff09;2. 編碼器工作電壓 3. 電機減速比 例如 30&#xff1a;1 指的就是電機減速軸轉1圈&#xff0c;編碼器轉30圈。注…

在C#中,可以不實例化一個類而直接調用其靜態字段

這是因為靜態成員&#xff08;static members&#xff09;屬于類本身&#xff0c;而不是類的實例。這是靜態成員的核心特性1. 靜態成員屬于類&#xff0c;而非實例當用static關鍵字修飾字段、方法或屬性時&#xff0c;這些成員會綁定到類級別&#xff0c;而不是實例級別。它們在…

Win11 安裝 Visual Studio(保姆教程 - 更新至2025.07)

Visual Studio 安裝&#xff08;保姆教程 - 更新至2025.07&#xff09; 前言安裝須知安裝過程1. 下載安裝包2. 安裝3. 注冊4. 創建桌面快捷方式 前言 本教程針對 非計算機相關專業的小白用戶 &#xff0c;手把手教你如何基于 win11 操作系統 安裝 Visual Studio 2022。安裝搭載…

工商銀行杭州軟開校招面經分享

近年來,央國企成為了很多求職者的首選,無論是校招還是社招。不過,在選擇央國企的時候,還是盡量要選擇壟斷性或者盈利多的。 昨天看到一份 2024 年中國企業 500 強榜單中提到的最賺錢的十家央國企的名單,給大家分享一下。 排名企業名稱成立時間主要業務描述2024年營收(萬…

李宏毅genai筆記:推理

0 思考越多效果越好 可以把算力投入在training的時候&#xff0c;也可以投入在testing上面 連起來的線表示表現是差不多的&#xff0c;越高分&#xff08;越右上方&#xff09;越好 同樣-1000分&#xff0c;可以訓練時候用力較少&#xff0c;test的時候多用點算力 但是training…

使用SSH隧道連接遠程主機

概述 SSH(Secure Shell 的縮寫)是一種網絡協議,通過使用身份驗證機制,是兩臺計算機進行加密通信。 SSH 主要用途是登錄服務器,還可以作為加密通信的中介,充當兩臺服務器之間的通信加密跳板,這個功能稱為端口轉發(port forwarding),又稱 SSH 隧道(tunnel)。 端口…

數據結構---鏈表理解(二)

文章目錄 二、鏈表2.1 鏈表初始化2.2 單鏈表2.2.1 單鏈表---頭插法2.2.2 單鏈表---單鏈表遍歷2.2.3 單鏈表---尾插法2.2.4 單鏈表---在指定位置插入數據2.2.5 單鏈表---刪除指定位置節點2.2.6 單鏈表---獲取鏈表長度2.2.7 單鏈表---釋放鏈表 二、鏈表 暫時到這一步你就理解為&a…

Playnite使用指北 —— 一個優秀的本地化游戲管理工具

為何我們使用 Playnite&#xff1f; 首先我們需要知道 Playnite 是什么&#xff0c;如果你有過用 emby 等管理過電影影視的經驗&#xff0c;你可能會對這種工具感到熟悉&#xff1a; Playnite 是一個開源的本地化的游戲管理軟件&#xff0c;可以實現多平臺的管理&#xff08;S…

時間與空間復雜度詳解:算法效率的度量衡

一、為什么需要復雜度分析&#xff1f; 想象你正在開發一個手機通訊錄應用&#xff0c;需要實現聯系人搜索功能。你有兩種算法可以選擇&#xff1a; // 算法A&#xff1a;線性搜索 public Contact linearSearch(List<Contact> contacts, String name) {for (Contact c …

408第三季part2 - 計算機網絡 - 交換機

理解 題目 如果你這么做 那你完了&#xff0c;因為這種叫存儲轉發 直通只轉目的地址 b 再次理解 A發數據到交換機里想給B 然后交換表會記錄A的MAC地址和端口 然后因為交換表找不到B&#xff0c;所以A會把BCD全部肘一遍&#xff08;廣播&#xff09;&#xff0c;最終只有B會…

從零開始開發純血鴻蒙應用之探析倉頡語言與ArkTS的差異

探析倉頡語言與ArkTS的差異 〇、前言一、IDE 的支持程度不同二、內置組件的使用方式不同三、頁面路由實現方式的不同四、總結 〇、前言 截止到本文發布的日期為止&#xff0c;鴻蒙官方所推薦的開發原生鴻蒙應用的語言&#xff0c;有兩種&#xff0c;分別是擴展自 Typescript 的…

Cursor/VScode ,點擊運行按鈕,就打開新的終端,如何設置為在當前終端運行文件而不是重新打開終端----一招搞定篇

我發現就是&#xff0c;我運行.py&#xff0c;點擊完運行按鈕&#xff0c;就給我重新打開一個終端&#xff0c;然后新的終端是在base環境中的&#xff0c;就跟麻煩 還得在當前終端輸入python3 test.py 來運行文件。能不能修改。1、打開cursor或者vscode 。 同時按下 ctrlshiftp…

【STM32實踐篇】:I2C驅動編寫

文章目錄I2C 物理層I2C 協議層1. 數據有效性2. 起始和停止信號3. 應答響應4. 總線的尋址方式5. 數據傳輸5.1 主機向從機發送數據5.2 主機由從機中讀數據5.3 I2C通信復合格式I2C 驅動編寫1. 配置 SCL 和 SDA2. I2C起始信號和停止信號3. 等待從設備應答4. 主機發送ACK和NACK信號5…