日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

微信小程序的基础 (一)

發(fā)布時(shí)間:2023/12/13 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 微信小程序的基础 (一) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

微信小程序介紹- 鏈接

微信小程序,簡(jiǎn)稱小程序,是一種不需要下載安裝即可使用的應(yīng)用,它實(shí)現(xiàn)了應(yīng)用“觸手可及”的夢(mèng)想,用戶掃一掃或搜一下即可打開應(yīng)用

1. 為什么是微信小程序?

  • 微信有海量用戶,而且粘性很高,在微信里開發(fā)產(chǎn)品更容易觸達(dá)用戶。
  • 推廣app 或公眾號(hào)的成本太高。
  • 開發(fā)適配成本低。
  • 容易小規(guī)模試錯(cuò),然后快速迭代。
  • 跨平臺(tái)。
  • 2. 微信小程序歷史

    • 2016年1月11日,微信之父張小龍時(shí)隔多年的公開亮相,解讀了微信的四大價(jià)值觀。張小龍指出,越來(lái)越多產(chǎn)品通過(guò)公眾號(hào)來(lái)做,因?yàn)檫@里開發(fā)、獲取用戶和傳播成本更低。拆分出來(lái)的服務(wù)號(hào)并沒有提供更好的服務(wù),所以微信內(nèi)部正在研究新的形態(tài),叫**「微信小程序」** 需要注意的是,之前是叫做 應(yīng)用號(hào)
    • 2016年9月21日,微信小程序正式開啟內(nèi)測(cè)。在微信生態(tài)下,觸手可及、用完即走的微信小程序引起廣泛關(guān)注。騰訊云正式上線微信小程序解決方案,提供小程序在云端服務(wù)器的技術(shù)方案。
    • 2017年1月9日,微信推出的“小程序”正式上線。“小程序”是一種無(wú)需安裝,即可使用的手機(jī)“應(yīng)用”。不需要像往常一樣下載App,用戶在微信中“用完即走”。

    3. 瘋狂的微信小程序

  • 微信月活已經(jīng)達(dá)到10.82億。其中55歲以上的用戶也達(dá)到6300萬(wàn)
  • 信息傳達(dá)數(shù)達(dá)到450億
  • 小程序覆蓋超過(guò)200+行業(yè),交易額增長(zhǎng)超過(guò)6倍,服務(wù)1000億+人次,創(chuàng)造出了5000億+的商業(yè)價(jià)值
  • 4. 還有其他的小程序

  • 支付寶小程序22
  • 百度小程序
  • QQ小程序
  • 今日頭條 + 抖音小程序
  • 5.官方微信小程序體驗(yàn)

    小程序示例源碼

    2準(zhǔn)備

    1. 注冊(cè)賬號(hào)

    • 建議使用全新的郵箱,沒有注冊(cè)過(guò)其他小程序或者公眾號(hào)的。

    • 訪問(wèn)注冊(cè)頁(yè)面,耐心完成注冊(cè)即可。

    2. 獲取APPID

    • 由于后期調(diào)用微信小程序的接口等功能,需要索取開發(fā)者的小程序中的APPID,所以在注冊(cè)成功后,可登錄,然后獲取APPID。

    • 登錄,成功后 開發(fā) => 開發(fā)設(shè)置 => 獲取 AppID

    3. 開發(fā)工具

    • 下載地址

    • 微信小程序自帶開發(fā)者工具,集 開發(fā) 預(yù)覽 調(diào)試 發(fā)布 于一身的 完整環(huán)境。

    第一個(gè)微信小程序

    ####1. 打開微信開發(fā)者工具

    • 注意 第一次登錄的時(shí)候 需要掃碼登錄

    2. 新建小程序項(xiàng)目

    3. 填寫項(xiàng)目信息

    微信開發(fā)者工具介紹

    小程序結(jié)構(gòu)目錄

    1. 小程序文件結(jié)構(gòu)和傳統(tǒng)web對(duì)比

    結(jié)構(gòu)傳統(tǒng)web微信小程序
    結(jié)構(gòu)HTMLWXML
    樣式CSSWXSS
    邏輯JavascriptJavascript
    配置無(wú)JSON
    • 通過(guò)以上對(duì)比得出,傳統(tǒng)web 是三層結(jié)構(gòu)。而微信小程序 是四層結(jié)構(gòu),多了一層 配置.json

    ####2. 基本的項(xiàng)目目錄

    小程序配置文件

    • 一個(gè)小程序應(yīng)用程序會(huì)包括最基本的兩種配置文件。一種是全局的 app.json 和 頁(yè)面自己的 page.json

    • 注意:配置文件中不能出現(xiàn)注釋

    1. 全局配置 app.json

    • app.json配置

    • app.json 是當(dāng)前小程序的全局配置,包括了小程序的所有頁(yè)面路徑、界面表現(xiàn)、網(wǎng)絡(luò)超時(shí)時(shí)間、底部 tab 等。

    {"pages":["pages/index/index","pages/logs/logs"],"window":{"navigationBarBackgroundColor": "#f00", "navigationBarTextStyle" : "black", "navigationBarTitleText": "小馬哥","navigationStyle" : "default","backgroundColor" : "#0f0","backgroundTextStyle" : "dark","enablePullDownRefresh" : false,"backgroundColorTop" : "#00f", // 窗口頂部背景 真機(jī)調(diào)試 僅ios "backgroundColorBottom" : "#f00", // 窗口底部背景 真機(jī)調(diào)試 僅ios "pageOrientation": "auto"} }

    字段的含義

  • pages字段 —— 用于描述當(dāng)前小程序所有頁(yè)面路徑,這是為了讓微信客戶端知道當(dāng)前你的小程序頁(yè)面定義在哪個(gè)目錄。
  • window字段 —— 定義小程序所有頁(yè)面的頂部背景顏色,文字顏色定義等。
  • tabBar字段 – 詳見底部 tab 欄
  • ####2. 頁(yè)面配置 page.json

    • page.json

    • 這里的 app.json 其實(shí)用來(lái)表示該小程序頁(yè)面相關(guān)的配置

    • 頁(yè)面的配置只能設(shè)置 app.json 中部分 window 配置項(xiàng)的內(nèi)容, 頁(yè)面中配置會(huì)覆蓋 app.json 的 window 中相同的配置項(xiàng)

    屬性類型默認(rèn)值描述
    navigationBarBackgroundColorHexColor#000000導(dǎo)航欄背景顏色,如 #000000
    navigationBarTextStyleStringwhite導(dǎo)航欄標(biāo)題顏色,僅支持 black / white
    navigationBarTitleTextString導(dǎo)航欄標(biāo)題文字內(nèi)容
    backgroundColorHexColor#ffffff窗口的背景色
    backgroundTextStyleStringdark下拉 loading 的樣式,僅支持 dark / light
    enablePullDownRefreshBooleanfalse是否全局開啟下拉刷新。 詳見 Page.onPullDownRefresh
    onReachBottomDistanceNumber50頁(yè)面上拉觸底事件觸發(fā)時(shí)距頁(yè)面底部距離,單位為px。 詳見 Page.onReachBottom
    disableScrollBooleanfalse設(shè)置為 true 則頁(yè)面整體不能上下滾動(dòng);只在頁(yè)面配置中有效,無(wú)法在 app.json 中設(shè)置該項(xiàng) (備:類似overflow:hidden)

    學(xué)小程序

    • 組件
    • api

    常見組件

    重點(diǎn)講解小程序中常用的布局組件

    view,text,rich-text,button,image,navigator,icon,swiper,radio,checkbox。等

    1. view

    • 視圖容器 - 相當(dāng)于之前的 div
    • 屬性 :
      • hover-class 指定按下去的樣式類
    <view hover-class="h-class">點(diǎn)擊我試試 </view>

    2. text

    • 文本標(biāo)簽 - 相當(dāng)于之前 span
    • 特殊用法 :
      • 長(zhǎng)按文字可以復(fù)制 (只有該標(biāo)簽有這個(gè)功能)
        • 設(shè)置true 才可以選擇, 手機(jī)預(yù)覽測(cè)試效果
      • 可以對(duì)空格 回車 進(jìn)行編碼
    屬性名類型默認(rèn)值說(shuō)明
    selectableBooleanfalse文本是否可選
    decodeBooleanfalse是否解碼
    • 代碼
    //1.1 不可以選擇 <text>測(cè)試選擇</text> //1.2 可以選擇 (手機(jī)測(cè)試) <text selectable='{{ true }}'>測(cè)試選擇</text>//2.1 顯示空格失敗 : 結(jié)果 => 姓&nbsp;名 <text>&nbsp;</text> //2.2 顯示空格成功 : 結(jié)果 => 姓 名 <text decode'>&nbsp;</text>//3 其他幾個(gè)格式 -- 看圖 <text decode>&ensp;正@</text> <text decode>&emsp;</text> <text decode>&nbsp;</text>
    • 使用場(chǎng)景
    <view><text decode="{{ true }}">&emsp;</text> </view> <view><text>產(chǎn)品名</text> </view>

    3. icon

    • 圖標(biāo)組件
    屬性類型默認(rèn)值必填說(shuō)明
    typestringicon的類型,有效值:success, success_no_circle, info, warn, waiting, cancel, download, search, clear
    sizenumber/string23icon的大小
    colorstringicon的顏色,同css的color
    • 代碼
    <icon type="success" size="40" color="red"/>

    4. radio

    • 單選框

    • 需要 搭配 radio-group 一起使用
    <radio-group > <radio></radio><radio></radio> </radio-group>

    5. checkbox

    • 多選框

    • 需要 搭配 checkbox-group 一起使用

    <checkbox-group><checkbox>前端</checkbox><checkbox>java</checkbox> </checkbox-group>

    6. image

    • 圖標(biāo)標(biāo)簽
      • image 組件默認(rèn)寬高 320*240
    • 屬性
    屬性名類型默認(rèn)值說(shuō)明
    srcString圖片資源地址
    modeString‘scaleToFill’圖片裁剪、縮放的模式
    lazy-loadBooleanfalse圖片懶加載

    mode 有效值:

    值說(shuō)明
    scaleToFill縮放模式,不保持縱橫比縮放圖片,使圖片的寬高完全拉伸至填滿 image 元素
    aspectFit縮放模式,保持縱橫比縮放圖片,使圖片的長(zhǎng)邊能完全顯示出來(lái)。也就是說(shuō),可以完整地將圖片顯示出來(lái)。
    aspectFill縮放模式,保持縱橫比縮放圖片,只保證圖片的短邊能完全顯示出來(lái)。也就是說(shuō),圖片通常只在水平或垂直方向是完整的,另一個(gè)方向?qū)?huì)發(fā)生截取。

    使用場(chǎng)景

    • scaleToFill : 盒子尺寸和圖片尺寸大小一樣, 使用該模式
    • aspectFit : 詳情頁(yè)頂部顯示圖片 (右)
    • aspectFill : 列表item 使用該模式 (左)
    //鏈接 <view><image mode="aspectFit" src="http://img2.imgtn.bdimg.com/it/u=1668465722,3535501153&fm=214&gp=0.jpg"></image> </view> <view><image mode="aspectFit" src="https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=1018718673,2637294948&fm=26&gp=0.jpg"></image> </view>

    7. swiper

    • 輪播圖組件

    • 默認(rèn)寬度 100% 高度 150px

    屬性名類型默認(rèn)值說(shuō)明
    indicator-dotsBooleanfalse是否顯示面板指示點(diǎn)
    indicator-colorColorrgba(0, 0, 0, .3)指示點(diǎn)顏色
    indicator-active-colorColor#000000當(dāng)前選中的指示點(diǎn)顏色
    autoplayBooleanfalse是否自動(dòng)播放
    intervalNumber5000自動(dòng)切換時(shí)間間隔
    circularBooleanfalse是否循環(huán)輪播
    • swiper

      • 滑塊視圖容器
    • swiper-item

      • 滑塊
    • 打開淘寶使用 : m.taobao.com

    8. navigator

    • 導(dǎo)航組件 類似超鏈接標(biāo)簽
    屬性名類型默認(rèn)值說(shuō)明
    targetStringself在哪個(gè)目標(biāo)上發(fā)生跳轉(zhuǎn),默認(rèn)當(dāng)前小程序,可選值self/miniProgram
    urlString當(dāng)前小程序內(nèi)的跳轉(zhuǎn)鏈接
    open-typeStringnavigate跳轉(zhuǎn)方式

    open-type 有效值:

    值說(shuō)明
    navigate保留當(dāng)前頁(yè)面,跳轉(zhuǎn)到應(yīng)用內(nèi)的某個(gè)頁(yè)面,但是不能跳到 tabbar 頁(yè)面
    redirect關(guān)閉當(dāng)前頁(yè)面,跳轉(zhuǎn)到應(yīng)用內(nèi)的某個(gè)頁(yè)面,但是不允許跳轉(zhuǎn)到 tabbar 頁(yè)面。
    switchTab跳轉(zhuǎn)到 tabBar 頁(yè)面,并關(guān)閉其他所有非 tabBar 頁(yè)面
    reLaunch關(guān)閉所有頁(yè)面,打開到應(yīng)用內(nèi)的某個(gè)頁(yè)面
    navigateBack關(guān)閉當(dāng)前頁(yè)面,返回上一頁(yè)面或多級(jí)頁(yè)面。可通過(guò) getCurrentPages() 獲取當(dāng)前的頁(yè)面棧,決定需要返回幾層
    exit退出小程序,target="miniProgram"時(shí)生效

    ?

    9. rich-text

    • 富文本標(biāo)簽

      • 可以將html字符串解析成 對(duì)應(yīng)標(biāo)簽,類似 vue中 v-html功能
    • 通過(guò)nodes屬性來(lái)實(shí)現(xiàn)

    • 接收標(biāo)簽字符串
    • 接收對(duì)象數(shù)組

    nodes屬性

    nodes屬性支持 字符串 和 標(biāo)簽節(jié)點(diǎn)數(shù)組

    屬性說(shuō)明類型必填備注
    name標(biāo)簽名string支持部分受信任的 HTML 節(jié)點(diǎn)
    attrs屬性object支持部分受信任的屬性,遵循 Pascal 命名法
    children子節(jié)點(diǎn)列表array結(jié)構(gòu)和 nodes 一致

    文本節(jié)點(diǎn):type = 'text’

    屬性說(shuō)明類型必填備注
    text文本string支持entities
    • 代碼
    // 標(biāo)簽字符串str :'<div style="color:red;" >呵呵</div>',// 對(duì)象數(shù)組str1 : [{name:'div',attrs:{style:"color:red;"},children : [{type:'text',text:'哈哈'}]}]// 使用 <rich-text nodes='{{ str1 }}'></rich-text>

    10. button

    <buttontype="default"size="{{defaultSize}}"loading="{{loading}}"plain="{{plain}}" >default </button> 屬性類型默認(rèn)值必填說(shuō)明
    sizestringdefault按鈕的大小
    typestringdefault按鈕的樣式類型
    plainbooleanfalse按鈕是否鏤空,背景色透明
    disabledbooleanfalse是否禁用
    loadingbooleanfalse名稱前是否帶 loading 圖標(biāo)
    form-typestring用于form組件,點(diǎn)擊分別會(huì)觸發(fā) form 組件的 submit/reset 事件
    open-typestring微信開放能力

    size 的合法值

    值說(shuō)明
    default默認(rèn)大小
    mini小尺寸

    type 的合法值

    值說(shuō)明
    primary綠色
    default白色
    warn紅色

    form-type 的合法值

    值說(shuō)明
    submit提交表單
    reset重置表單
    <form bindsubmit="handle"><input name='n1'></input><input name='n2'></input><button form-type="submit">重置</button><button form-type="reset">重置</button> </form>

    open-type 的合法值

    值說(shuō)明
    contact打開客服會(huì)話,需要在微信小程序的后臺(tái)配置 (演示不了)
    share觸發(fā)用戶轉(zhuǎn)發(fā),
    getPhoneNumber獲取用戶手機(jī)號(hào),不是企業(yè)的小程序賬號(hào) 沒有權(quán)限來(lái)獲取用戶的手機(jī)號(hào)碼 (演示不了)
    getUserInfo獲取用戶信息,可以從bindgetuserinfo回調(diào)中獲取到用戶信息
    launchApp打開APP 需要配合原生app (演示不了)
    openSetting打開授權(quán)設(shè)置頁(yè)
    feedback打開“意見反饋”頁(yè)面,需要真機(jī)調(diào)試

    總結(jié)

    以上是生活随笔為你收集整理的微信小程序的基础 (一)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。