前端系列——小程序開發記錄片 - 新聞資訊 - 雲南小程序開發|雲南軟件開發|雲南網站建設-昆明融晨信息技術有限公司

159-8711-8523

雲南網建設/小程序開發/軟件開發

知識

不(bù)管是(shì)網站,軟件還是(shì)小程序,都要(yào / yāo)直接或間接能爲(wéi / wèi)您産生價值,我們在(zài)追求其視覺表現的(de)同時(shí),更側重于(yú)功能的(de)便捷,營銷的(de)便利,運營的(de)高效,讓網站成爲(wéi / wèi)營銷工具,讓軟件能切實提升企業内部管理水平和(hé / huò)效率。優秀的(de)程序爲(wéi / wèi)後期升級提供便捷的(de)支持!

您當前位置>首頁 » 新聞資訊 » 小程序相關 >

前端系列——小程序開發記錄片

發表時(shí)間:2021-3-31

發布人(rén):融晨科技

浏覽次數:43

概要(yào / yāo)

由于(yú)公司的(de)業務需求,本想年底偷個(gè)懶,但是(shì)開發小程序的(de)任務襲來(lái)。

第一次開發這(zhè)玩意,記錄一些需要(yào / yāo)注意的(de)點,以(yǐ)後再次開發時(shí)可以(yǐ)快速解決。

如果你是(shì)新手,推薦你先看官方文檔,如果你在(zài)開發小程序過程中遇到(dào)一些不(bù)懂的(de)地(dì / de)方,可以(yǐ)看看這(zhè)篇文章會不(bù)會給你啓發。

細則

1、優先使用rpx替代px。

2、設計圖通常按照iPhone6的(de)基準。

3、當使用一些交互組件時(shí),優先從官方組件裏面挑選,沒有再自定義組件。

4、自定義組件通常按照以(yǐ)下格式來(lái)寫js。

Component({
  options: {
    multipleSlots: true
  },
  properties: {
    data: {
      type: String
    }
  },
  methods: {
    handleClcik: function (e) {
      if (!!e) {
        //handleClcik類似一個(gè)回調函數,點擊當前自定義組件的(de)某個(gè)按鈕觸發
        this.triggerEvent('_handleClcik', e)
      }
    }
  }
})

5、自定義組件還需要(yào / yāo)增加json文件。

{
  "component": true
}

6、自定義組件的(de)wxml和(hé / huò)wxss和(hé / huò)官方組件寫法一樣。

7、事件通常以(yǐ)catch或者bind開頭,事件函數用雙引号括起來(lái),當然單引号也(yě)是(shì)可以(yǐ)的(de)。catch和(hé / huò)bind的(de)區别是(shì)前者不(bù)會冒泡,後者支持冒泡。

<view catchtap="handleClcik"></view>

<view bindtap="handleClcik"></view>

8、如果你的(de)page引用了(le/liǎo)某個(gè)自定義組件,需要(yào / yāo)在(zài)json配置路徑,否則不(bù)能在(zài)page裏面調用。

{
  "usingComponents": {
    "myComponent": "/components/MyComponent/myComponent"
  }
}

9、在(zài)page裏面調用自定義組件也(yě)很簡單,下面這(zhè)種方式。_handleClcik對應自定義組件裏面的(de)triggerEvent。

<myComponent
    data="{{data}}"
    bind:_handleClcik="_handleClcik"
></myComponent>

10、組件中的(de)事件如何傳遞參數呢?這(zhè)就(jiù)需要(yào / yāo)用到(dào)HTML5的(de) data-xx 了(le/liǎo)。

<view 
    bindtap="handleClcik"
    data-item="{{data}}"
>{{data}}</view>

接着你可以(yǐ)根據上(shàng)面用到(dào)的(de)triggerEvent傳遞的(de)e,将數據和(hé / huò)函數一起傳遞給父組件中獲取執行。

_handleClcik: function(e) {
    console.log(e) //打印它,你會看到(dào)當前點擊對象的(de)實例。
}

11、小程序沒有window對象,所有原生組件(包括view)、自定義組件等,通過操作它們的(de)實例,可以(yǐ)獲取到(dào)組件的(de)信息(比如高度)。

let query = wx.createSelectorQuery()
    query.select('#id').boundingClientRect()
    query.exec((res) => {
      console.log(res) //當前組件實例的(de)屬性
    })

12、onReady是(shì)确保你的(de)組件已經實例并且渲染完成的(de)函數。

13、更新數據通過 this.setData({}) 來(lái)完成,這(zhè)種行爲(wéi / wèi)很像React,但在(zài)小程序中是(shì)同步的(de)操作。

14、給組件綁定數據就(jiù)很簡單了(le/liǎo),2個(gè)大(dà)括号 {{data}}。

15、在(zài)組件中設置三元表達式。有時(shí)候,我們需要(yào / yāo)用三元表達式判斷樣式。

<view
    style="color: {{isRed: '#f00' : '#fff'}}"
></view>

總結

暫時(shí)隻想到(dào)這(zhè)些,更多的(de)用法在(zài)官方文檔有詳細說(shuō)明。

相關案例查看更多