首頁>新聞中心>小程序開發

        小程序開發的幾個實用技巧

        超級管理員 2023-04-17

        1. 列表渲染

        • 將wx:for代碼塊放入<block></block>中

          <block wx:for="{{books}}">
            <v-book  books="{{item}}" wx:key="item.id"></v-book></block>
        • 通過wx:for-item="itemName",小程序wx:for默認別名為item

          • 使用場景為:組件內部定義了item屬性,通過修改別名避免沖突

            <block wx:for="{{books}}" wx:for-item="itemName">
                    <v-book books="{{itemName}}" wx:key="itemName.id"></v-book>
                  </block>

        2.頁面page如何傳遞參數

        • 通過wx.navigateTo跳轉的頁面,參數會包含在onLoad方法的options里

          1682559775259.jpg

          // 組件跳轉前攜帶參數wx.navigateTo({
            url: `/pages/book-detail/book-detail?bid=${bid}`,})// 跳轉后的組件從onLoad生命周期里獲取參數

        3.三種小程序編譯模式

        • 普通編譯:每次編譯完打開首頁

        • 添加編譯模式:自己定義編譯模式,自定義啟動頁面

        • 通過二維碼編譯

        4.slot插槽的使用

        • slot插槽可以理解為組件的properites,只是slot傳入的是標簽

        • slot插槽使用分為三步:啟用slot,定義slot,使用slot

          • 組件中使用slot

            options:{
                multipleSlots: true}
          • 組件頁面定義slot插槽

            <slot name="nums">{{num}}</slot>
          • 頁面中使用插槽

            <v-tag text="{{item.content}}">
                      <text slot='nums'>{{'+'+item.nums}}</text></v-tag>
        • slot插槽的標簽樣式在頁面中設置

        5.外部樣式的概念-externalClass

        • 外部樣式externalClass使用(類似于插槽slot)

          • 在組件中定義externalClass外部樣式

              externalClasses: [
                'tag-class'
              ],
          • 在組件中使用

            <view class="container tag-class">
          • 在外部頁面傳入樣式

            // wxml<v-tag tag-class="ex-tag" text="{{item.content}}">// wxss.ex-tag{
                color:white;}
        • 外部樣式如何強制覆蓋普通樣式

          • 1.不要默認樣式,只用外部樣式

          • 2.使用外部樣式強制覆蓋普通樣式(!important)

          • 小程序中,外部傳入的樣式無法保證肯定能覆蓋掉組件的默認樣式,因為小程序沒有強制使用外部樣式覆蓋默認樣式的機制。解決辦法有兩種:

        6.讓wxml能夠解析&nbsp

        • 在頁面tag上開啟解析能力 decode ="{{true}}"

          <text class="content" decode="{{true}}">{{util.format(book.summary)}}</text>

        7.wxs概念與應用

        • 為什么用wxs

          • wxml無法調用js以及編寫js

          • 使用wxs實現過濾器的功能

        • 如何使用-以格式化文本為例(去掉多余的號)

          • 新建filter.wxs(wxs中只能使用var,不能使用const)

            var format = function (text) {
              if (!text) {
                return
              }
              var reg = getRegExp('\\n', 'g')
              return text.replace(reg, '
            ')}var getTag = function (index) {
              var tag = index == 0 ? 'ex-tag1' : '' || index == 1 ? 'ex-tag2' : ''
              return tag}module.exports = {
              format: format,
              gettag: getTag}
          • wxml頁面使用

            // 引入<wxs src="../../util/filter.wxs" module="util"></wxs>// 使用<text class="content">{{util.format(book.summary)}}</text>
          • 直接在wxml中編寫wxs代碼

            <wxs module="tools">
              var getTag = function (index) {
                if (index == 0) {
                  return 'ex-tag1'
                }
                if (index == 1) {
                  return 'ex-tag2'
                }
                
                return ''
              }
              module.exports={
                getTag: getTag  }</wxs>

        8.小程序的常用事件

        • 1.bind:tap事件

          • 用戶點擊觸發

        • 2.input專用bindconfirm事件

          • 輸入完點擊鍵盤上的完成按鈕時觸發

        9.常用toast

        • 彈出提示信息wx.showToast

          wx.showToast({
            title: comment + 1,
            icon: 'none'})
        • 加載提示wx.showLoading

          wx.showLoading()

        10.并行請求與串行請求

        • Promise.all()-將多個Promise實例合并成一個Promise

          Promise.all([detail, comments, likeStatus]).then(res => {
            wx.hideLoading()})
        • Promise.race()-相互競爭,多個Promise實例中最先完成的實例觸發

        —— 相關文章 ——

        公眾號

        關注公眾號

        微信咨詢

        企業微信號

        咨詢熱線

        咨詢熱線

        18689879222

        QQ咨詢

        咨詢QQ

        9010428

        中文在线√天堂| 国产日韩精品中文字无码| 一二三四在线播放免费观看中文版视频 | 天堂资源中文最新版在线一区| 亚洲色无码一区二区三区| 久久精品aⅴ无码中文字字幕重口 久久精品天天中文字幕人妻 | 无码中文字幕乱在线观看| 中文字幕无码无码专区| 少妇精品无码一区二区三区| 一二三四在线播放免费观看中文版视频| 嫩草影院无码av| 熟妇人妻中文字幕无码老熟妇| 亚洲精品无码AV中文字幕电影网站 | 永久免费AV无码网站国产| 午夜视频在线观看www中文| 国产日韩精品无码区免费专区国产| 一夲道无码人妻精品一区二区| 中文字幕一区二区三区5566 | 亚洲伊人成无码综合网| HEYZO无码综合国产精品227| 亚洲午夜福利AV一区二区无码| 中文字幕你懂的| 最近的中文字幕在线看视频| 毛片无码全部免费| 国产亚洲情侣一区二区无码AV| 精品无码久久久久久尤物| 无码137片内射在线影院| 亚洲AV无码一区东京热| 中文字幕无码乱人伦| 国产精品99久久久精品无码| 最近中文字幕高清免费中文字幕mv | 亚洲一区二区三区AV无码| 在线播放无码高潮的视频| 无码人妻精品中文字幕免费东京热| 91天日语中文字幕在线观看| 在线中文字幕一区| 亚洲欧美日韩在线不卡中文| 亚洲欧洲中文日韩久久AV乱码| a亚洲欧美中文日韩在线v日本| 高清无码v视频日本www| 欧美日韩毛片熟妇有码无码 |