05-微信小程序常用組件-表單組件

05-微信小程序常用組件-表單組件

文章目錄

  • 表單組件
    • button 按鈕
      • 案例代碼
    • form 表單
      • 案例代碼
    • image 圖片
      • 支持長按識別的碼
      • 案例代碼

微信小程序包含了六大組件: 視圖容器基礎內容導航表單互動導航。這些組件可以通過WXML和WXSS進行布局和樣式設置,從而構建出豐富的小程序界面和交互體驗。

  • 其中,視圖容器組件包括view和scroll-view等,用于實現頁面的結構和滾動效果;
  • 基礎內容組件包括text和image等,用于顯示文本和圖片內容;
  • 表單組件包括button、input和checkbox等,用于實現用戶輸入和選擇;
  • 互動組件包括contact和action-sheet等,用于實現用戶之間的互動和操作。

表單組件

微信小程序表單組件官方文檔

button 按鈕

功能描述

按鈕。

屬性說明

Skyline 僅列出與 WebView 屬性的差異,未列出的屬性與 WebView 一致。

WebView Skyline

屬性類型默認值必填說明最低版本
sizestringdefault按鈕的大小1.0.0
typestringdefault按鈕的樣式類型1.0.0
plainbooleanfalse按鈕是否鏤空,背景色透明1.0.0
disabledbooleanfalse是否禁用1.0.0
loadingbooleanfalse名稱前是否帶 loading 圖標1.0.0
form-typestring用于 form 組件,點擊分別會觸發 form 組件的 submit/reset 事件1.0.0
open-typestring微信開放能力1.1.0
hover-classstringbutton-hover指定按鈕按下去的樣式類。當 hover-class="none" 時,沒有點擊態效果1.0.0
hover-stop-propagationbooleanfalse指定是否阻止本節點的祖先節點出現點擊態1.5.0
hover-start-timenumber20按住后多久出現點擊態,單位毫秒1.0.0
hover-stay-timenumber70手指松開后點擊態保留時間,單位毫秒1.0.0
langstringen指定返回用戶信息的語言,zh_CN 簡體中文,zh_TW 繁體中文,en 英文。1.3.0
session-fromstring會話來源,open-type="contact"時有效1.4.0
send-message-titlestring當前標題會話內消息卡片標題,open-type="contact"時有效1.5.0
send-message-pathstring當前分享路徑會話內消息卡片點擊跳轉小程序路徑,open-type="contact"時有效1.5.0
send-message-imgstring截圖會話內消息卡片圖片,open-type="contact"時有效1.5.0
app-parameterstring打開 APP 時,向 APP 傳遞的參數,open-type=launchApp時有效1.9.5
show-message-cardbooleanfalse是否顯示會話內消息卡片,設置此參數為 true,用戶進入客服會話會在右下角顯示"可能要發送的小程序"提示,用戶點擊后可以快速發送小程序消息,open-type="contact"時有效1.5.0
bindgetuserinfoeventhandle用戶點擊該按鈕時,會返回獲取到的用戶信息,回調的detail數據與wx.getUserInfo返回的一致,open-type="getUserInfo"時有效1.3.0
bindcontacteventhandle客服消息回調,open-type="contact"時有效1.5.0
bindgetphonenumbereventhandle手機號快速驗證回調,open-type=getPhoneNumber時有效1.2.0
binderroreventhandle當使用開放能力時,發生錯誤的回調,open-type=launchApp時有效1.9.5
bindopensettingeventhandle在打開授權設置頁后回調,open-type=openSetting時有效2.0.7
bindlaunchappeventhandle打開 APP 成功的回調,open-type=launchApp時有效2.4.4
bindchooseavatareventhandle獲取用戶頭像回調,open-type=chooseAvatar時有效2.21.2

Bug & Tip

  1. tip: button-hover 默認為{background-color: rgba(0, 0, 0, 0.1); opacity: 0.7;}
  2. tip: bindgetphonenumber 從1.2.0 開始支持,但是在1.5.3以下版本中無法使用wx.canIUse進行檢測,建議使用基礎庫版本進行判斷。
  3. tip: 在bindgetphonenumber 等返回加密信息的回調中調用 wx.login 登錄,可能會刷新登錄態。此時服務器使用 code 換取的 sessionKey 不是加密時使用的 sessionKey,導致解密失敗。建議開發者提前進行 login;或者在回調中先使用 checkSession 進行登錄態檢查,避免 login 刷新登錄態。
  4. tip: 從 2.21.2 起,對getPhoneNumber接口進行了安全升級,bindgetphonenumber 返回的信息中增加code參數,code是一個動態的令牌,開發者拿到code后需調用微信后臺接口換取手機號。詳情新版接口使用指南
  5. tip: 從 2.1.0 起,button 可作為原生組件的子節點嵌入,以便在原生組件上使用 open-type 的能力。
  6. tip: 目前設置了 form-typebutton 只會對當前組件中的 form 有效。因而,將 button 封裝在自定義組件中,而 form 在自定義組件外,將會使這個 buttonform-type 失效。

案例代碼

primary綠色
default白色
warn紅色

wxml

<view><button size='default'>默認尺寸按鈕</button><button size='mini'>mini按鈕</button><button size='mini' type="primary">綠色mini按鈕</button><button size='mini' type="warn" plain="ture" >紅色mini按鈕</button>
</view>
  • 效果圖

在這里插入圖片描述

  • 設置按鈕禁用

disabled="ture"

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-eqmQblGM-1692368330313)(2023微信小程序圖片/image-20230630134604728.png)]

form 表單

功能描述

表單。將組件內的用戶輸入的switch input checkbox slider radio picker 提交。

當點擊 form 表單中 form-type 為 submit 的 button 組件時,會將表單組件中的 value 值進行提交,需要在表單組件中加上 name 來作為 key。

屬性說明

屬性類型默認值必填說明最低版本
report-submitbooleanfalse是否返回 formId 用于發送模板消息1.0.0
report-submit-timeoutnumber0等待一段時間(毫秒數)以確認 formId 是否生效。如果未指定這個參數,formId 有很小的概率是無效的(如遇到網絡失敗的情況)。指定這個參數將可以檢測 formId 是否有效,以這個參數的時間作為這項檢測的超時時間。如果失敗,將返回 requestFormId:fail 開頭的 formId2.6.2
bindsubmiteventhandle攜帶 form 中的數據觸發 submit 事件,event.detail = {value : {‘name’: ‘value’} , formId: ‘’}1.0.0
bindreseteventhandle表單重置時會觸發 reset 事件1.0.0

案例代碼

<form bindsubmit="formSubmit" bindreset="formReset"><view class="section section_gap"><view class="section__title">switch</view><switch name="switch" /></view><view class="section section_gap"><view class="section__title">slider</view><slider name="slider" show-value></slider></view><view class="section"><view class="section__title">input</view><input name="input" placeholder="please input here" /></view><view class="section section_gap"><view class="section__title">radio</view><radio-group name="radio-group"><label><radio value="radio1" /> radio1</label><label><radio value="radio2" /> radio2</label></radio-group></view><view class="section section_gap"><view class="section__title">checkbox</view><checkbox-group name="checkbox"><label><checkbox value="checkbox1" /> checkbox1</label><label><checkbox value="checkbox2" /> checkbox2</label></checkbox-group></view><view class="btn-area"><button form-type="submit">Submit</button><button form-type="reset">Reset</button></view>
</form>
  • 效果

在這里插入圖片描述

image 圖片

功能描述

圖片。支持 JPG、PNG、SVG、WEBP、GIF 等格式,2.3.0 起支持云文件ID。

屬性說明

Skyline 僅列出與 WebView 屬性的差異,未列出的屬性與 WebView 一致。

WebView Skyline

屬性類型默認值必填說明最低版本
srcstring圖片資源地址1.0.0
modestringscaleToFill圖片裁剪、縮放的模式1.0.0
webpbooleanfalse默認不解析 webP 格式,只支持網絡資源2.9.0
lazy-loadbooleanfalse圖片懶加載,在即將進入一定范圍(上下三屏)時才開始加載1.5.0
show-menu-by-longpressbooleanfalse長按圖片顯示發送給朋友、收藏、保存圖片、搜一搜、打開名片/前往群聊/打開小程序(若圖片中包含對應二維碼或小程序碼)的菜單。2.7.0
binderroreventhandle當錯誤發生時觸發,event.detail = {errMsg}1.0.0
bindloadeventhandle當圖片載入完畢時觸發,event.detail = {height, width}1.0.0

支持長按識別的碼

類型說明最低版本
小程序碼
微信個人碼2.18.0
企業微信個人碼2.18.0
普通群碼指僅包含微信用戶的群2.18.0
互通群碼指既有微信用戶也有企業微信用戶的群2.18.0
公眾號二維碼2.18.0

Bug & Tip

  1. tip:image組件默認寬度320px、高度240px
  2. tip:image組件進行縮放時,計算出來的寬高可能帶有小數,在不同webview內核下渲染可能會被抹去小數部分

mode 有 13 種模式,其中 4 種是縮放模式,9 種是裁剪模式。

模式合法值說明最低版本
縮放scaleToFill縮放模式,不保持縱橫比縮放圖片,使圖片的寬高完全拉伸至填滿 image 元素
縮放aspectFit縮放模式,保持縱橫比縮放圖片,使圖片的長邊能完全顯示出來。也就是說,可以完整地將圖片顯示出來。
縮放aspectFill縮放模式,保持縱橫比縮放圖片,只保證圖片的短邊能完全顯示出來。也就是說,圖片通常只在水平或垂直方向是完整的,另一個方向將會發生截取。
縮放widthFix縮放模式,寬度不變,高度自動變化,保持原圖寬高比不變
裁剪heightFix縮放模式,高度不變,寬度自動變化,保持原圖寬高比不變2.10.3
裁剪top裁剪模式,不縮放圖片,只顯示圖片的頂部區域
裁剪bottom裁剪模式,不縮放圖片,只顯示圖片的底部區域
裁剪center裁剪模式,不縮放圖片,只顯示圖片的中間區域
裁剪left裁剪模式,不縮放圖片,只顯示圖片的左邊區域
裁剪right裁剪模式,不縮放圖片,只顯示圖片的右邊區域
裁剪top left裁剪模式,不縮放圖片,只顯示圖片的左上邊區域
裁剪top right裁剪模式,不縮放圖片,只顯示圖片的右上邊區域
裁剪bottom left裁剪模式,不縮放圖片,只顯示圖片的左下邊區域
裁剪bottom right裁剪模式,不縮放圖片,只顯示圖片的右下邊區域

案例代碼

<image src="../image/202306001.png"></image>
<image src="../image/202306003.png" mode="top"></image>

在這里插入圖片描述

<image src="../image/202306001.png"></image>
<image src="../image/202306001.png" mode="right"></image>

在這里插入圖片描述

``下一章節 微信小程序-注冊程序-場景值.

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

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

相關文章

jQuery第一次接觸

jQuery是一個輕量級js庫 1.下載jquery庫&#xff0c;網址Download jQuery | jQuery npm i jquery 2.還可以從cdn中載入jquery <script src"https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"> 3.j代表js&#xff0c;query代表查詢&#xff0c;jQu…

超實用的40道JAVA經典算法題(含答案)

作為一名Java程序員&#xff0c;想要拿到一份滿意的offer&#xff0c;就必須做好充足的準備。眾所周知&#xff0c;算法可以說是大廠面試Java程序員的必問題。好的算法可以讓性能得到萬倍提升&#xff0c;做到毫秒級處理千萬數據的程度。因此&#xff0c;算法的重要性不言而喻&…

fedora

about firewall well, I don’t know how to use fedora firewall,but it I come up with that I can use ubuntu’s ufw for blocking evil connection, download wps extremely boredness drove me to install fedora&#xff0c; It can use wps pdf&#xff0c;但我仍然…

PAT 1018 Public Bike Management

個人學習記錄&#xff0c;代碼難免不盡人意。 There is a public bike service in Hangzhou City which provides great convenience to the tourists from all over the world. One may rent a bike at any station and return it to any other stations in the city. The Pu…

【實用插件】ArcGIS for AutoCAD插件分享下載

ArcGIS包含一系列功能&#xff0c;其中ArcGIS for AutoCAD一個免費的可下載的AutoCAD插件&#xff0c;它可簡化將CAD和GIS數據整合在一起的過程提供互操作性。 ArcGIS for AutoCAD互操作性平臺將連接AutoCAD和 ArcGIS&#xff0c;以增強使用地理環境設計CAD工程圖時的用戶體驗…

Kubernetes 企業級高可用部署

目錄 1、Kubernetes高可用項目介紹 2、項目架構設計 2.1、項目主機信息 2.2、項目架構圖 2.3、項目實施思路 3、項目實施過程 3.1、系統初始化 3.2、配置部署keepalived服務 3.3、配置部署haproxy服務 3.4、配置部署Docker服務 3.5、部署kubelet kubeadm kubectl工具…

程序員你可長點心吧!代碼檢查你得用

代碼檢查的重要性不言而喻&#xff0c;很多重要的項目都要做代碼的檢查&#xff0c;及時糾正代碼中的錯誤&#xff0c;確保代碼的可讀性、可維護性和可拓展性&#xff0c;從而保證軟件的質量。 一、代碼檢查的定義 代碼檢查是指通過對程序代碼的獨立檢查來提高代碼質量和開發效…

論壇項目之用戶部分

注冊接口 實現思路 1.特殊字段檢查&#xff08;比如性別沒有給出需要給出默認值&#xff09; 2.對比檢查兩次輸入的密碼是否一致&#xff0c;不一致報錯 3.利用UUID生成隨機‘鹽’值&#xff0c;并使用密碼進行MD5加密后與‘鹽’進行拼接&#xff0c;生成加密后的密碼 4.創建U…

什么是P2P?

P2P (Peer-to-Peer) 是一種分布式的網絡架構&#xff0c;其中各個節點&#xff08;通常被稱為“peers”或“節點”&#xff09;直接進行數據共享和交換&#xff0c;而無需依賴中央服務器。P2P 網絡強調平等的參與和共享&#xff0c;每個節點既可以是數據的消費者&#xff08;下…

推進深度融合 打造智慧媒體

以下內容來自于易知微官網&#xff0c;點擊一下&#xff0c;即可進入官網了解詳情。 注意&#xff1a;案例數據均為虛擬數據 數字改革是一場波及經濟社會發展全局、涵蓋生產力到生產關系的全方位變革。在數字化時代&#xff0c;以數字改革賦能媒體深度融合已然成為時代所向、…

每日一題——連續子數組的最大和

題目 輸入一個長度為n的整型數組array&#xff0c;數組中的一個或連續多個整數組成一個子數組&#xff0c;子數組最小長度為1。求所有子數組的和的最大值。 數據范圍:1<n<2105 ?100<a[i]<100 要求:時間復雜度為 O(n)&#xff0c;空間復雜度為 O(n) 示例1 輸入…

ubuntu中安裝python

最簡單方便的是 apt 使用第三方的 ppa 源&#xff0c;然后直接 apt 安裝 python3.9 安裝 software-properties-common 獲取add-apt-repository命令&#xff1a;apt install -y software-properties-common添加第三方的 ppa 源&#xff1a;add-apt-repository ppa:deadsnakes/p…

Spring系列篇--關于Spring Bean完整的生命周期【附有流程圖,超級易懂】

&#x1f973;&#x1f973;Welcome Huihuis Code World ! !&#x1f973;&#x1f973; 接下來看看由輝輝所寫的關于Spring的相關操作吧 目錄 &#x1f973;&#x1f973;Welcome Huihuis Code World ! !&#x1f973;&#x1f973; 一.Spring Bean是單例模式還是多例模式 二…

Kafka如何保證消息?定能被消費

Kafka 通過多種機制來保證消息一定能被消費&#xff0c;從而實現數據的可靠性和持久性。 以下是一些常見的方法和策略來提高消息的可靠性&#xff1a; 復制機制&#xff1a; Kafka 使用了分區和副本的概念。每個分區可以有多個副本&#xff0c;分布在不同的 Broker 上。當消息…

k8s 自身原理 3

前面有分享到 master 主節點上的 四個組件&#xff0c;etcd&#xff0c;ApiServer&#xff0c;scheduler&#xff0c;controller manager 接下來我們分享一波 woker 節點上的組件&#xff0c;xdm 還記得 worker 節點上都有什么嗎&#xff1f; kubeletkube-proxy實際的服務對應…

【數據結構】棧和隊列常見題目

文章目錄 有效的括號用隊列實現棧兩個隊列實現棧一個隊列實現棧用棧實現隊列設計循環隊列最小棧棧的壓入&彈出序列逆波蘭表達式隊列:先進先出 棧:后進先出 有效的括號 https://leetcode.cn/problems/valid-parentheses/ class Solution {public:bool isValid(string s) {…

如何讓多線程步調一致?

前幾天老板突然匆匆忙忙的過來說對賬系統最近越來越慢了&#xff0c;能不能快速優化一下&#xff1f;我了解了對賬系統的業務后&#xff0c;發現還是挺簡單的&#xff0c;用戶通過在線商城下單&#xff0c;會生成電子訂單&#xff0c;保存在訂單庫。之后物流會生成派送單給用戶…

Redis - 數據類型映射底層結構

簡介 從數據類型上體現就是&#xff0c;同一個數據類型&#xff0c;在不同的情況下會使用不同的編碼類型&#xff0c;底層所使用的的數據結構也不相同。 字符串對象 字符串對象的編碼可以是 int、raw 和 embstr 三者之一。 embstr 編碼是專門用于保存簡短字符串的一種優化編…

每日一學——無線基礎知識

無線局域網&#xff08;Wireless Local Area Network&#xff0c;簡稱 WLAN&#xff09;是一種使用無線通信技術連接多個無線終端設備的局域網。它通常基于無線電波傳輸數據&#xff0c;并使用無線接入點&#xff08;Access Point&#xff0c;簡稱 AP&#xff09;來連接無線設備…

網絡安全--負載均衡

負載均衡 webshell實踐 一、負載均衡配置 1.在全局的http下寫下它&#xff1a; upstream nginx_boot{# 30s內檢查心跳發送兩次包&#xff0c;未回復就代表該機器宕機&#xff0c;請求分發權重比為1:2server 192.168.0.000:8080 weight100 max_fails2 fail_timeout30s; ser…