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

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

        超級管理員 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

        无码av免费网站| 最近免费字幕中文大全| 波多野结衣AV无码久久一区| 国产亚洲情侣一区二区无码AV| 午夜无码中文字幕在线播放| 精品久久久久久无码中文字幕| 亚洲日韩国产二区无码| 色综合中文字幕| 中文字幕精品无码一区二区| 国产成A人亚洲精V品无码性色| 欧美一级一区二区中文字幕| 中文字幕无码不卡免费视频| 久久久久亚洲av无码专区导航| 无码人妻精品一区二区三区蜜桃| 中文字幕乱码久久午夜| 狠狠精品干练久久久无码中文字幕| 亚洲精品无码久久久久sm| 亚洲欧美日韩中文字幕一区二区| 狠狠躁狠狠爱免费视频无码| 日韩精品无码一区二区中文字幕 | 无码八A片人妻少妇久久| 无码人妻精品中文字幕免费东京热| 人妻少妇乱子伦无码视频专区| 亚洲日韩国产二区无码| 日韩a级无码免费视频| 欧美日韩亚洲中文字幕二区 | 亚洲精品无码久久毛片| 丰满少妇人妻无码| 人妻无码αv中文字幕久久琪琪布| 亚洲精品无码久久久久久| 亚洲中文字幕无码日韩| 久久精品亚洲乱码伦伦中文| 日本精品久久久久中文字幕8| 少妇人妻88久久中文字幕 | 日本久久久精品中文字幕| 日本成人中文字幕| 精品人妻无码专区中文字幕| 最近中文字幕电影大全免费版| 中文字幕精品视频| 最近新中文字幕大全高清| 亚洲精品一级无码中文字幕 |