注冊

微信小程序工具第三方平臺,小程序官方認可的第三方開發(fā)商

2020-09-27
導讀:概述 同開發(fā)普通的小程序不同,開發(fā)第三方平臺小程序具有一定的復雜性,首先需要確認三個概念 open3rd:第三方平臺,是小程序官方認可的第三方開發(fā)商詳情 3rdMiniProgramAppid:第三方...

概述


同開發(fā)普通的小程序不同,開發(fā)第三方平臺小程序具有一定的復雜性,首先需要確認三個概念

  • open3rd:第三方平臺,是小程序官方認可的第三方開發(fā)商 詳情
  • 3rdMiniProgramAppid:第三方平臺申請的并綁定在該平臺上的小程序,用于開發(fā)小程序模板
  • extAppid:授權(quán)給第三方平臺的小程序

因為以上的這些不同,第三方平臺相關(guān)的小程序開發(fā)需要做一些特殊的處理

微信小程序工具第三方平臺,小程序官方認可的第三方開發(fā)商

  • 小程序模板的開發(fā)
  • 小程序模板結(jié)合 extAppid 的開發(fā)調(diào)試

最新版本的開發(fā)工具支持第三方平臺小程序的開發(fā)和預覽。

創(chuàng)建項目


與開發(fā)普通小程序一致,第三方平臺開發(fā)者填入相關(guān)的 3rdMiniProgramAppid ,設定項目名稱和選擇項目目錄即可創(chuàng)建項目。

對于第三方平臺小程序,可以在項目頁卡查看到相關(guān)的 open3rd 信息以及當前的第三方的 3rdMiniProgramAppid ,如若項目配置了相關(guān)的 extAppid ,那么項目頁卡中也會有相關(guān)信息。

 

小程序模板開發(fā)


與開發(fā)普通小程序一致,開發(fā)者在開發(fā)工具上開發(fā)好相關(guān)的業(yè)務邏輯之后,在項目頁卡中提交預覽既可以在微信中查看小程序的真實表現(xiàn),

有所不同的是,第三方平臺小程序的提交上傳是上傳至該第三方平臺的 open 帳號下的模板草稿箱中,該平臺的管理員需要自行對該模板進行相應的設置,更多請參考 open平臺的文檔 。

extAppid 的開發(fā)調(diào)試


為了方便第三方平臺的開發(fā)者引入 extAppid 的開發(fā)調(diào)試工作,需要引入ext.json的概念。

ext.json是一個配置文件,放置在小程序項目的根目錄下。

以下是一個包含了所有配置選項的ext.json

{
  "extEnable": true,
  "extAppid": "wxf9c4501a76931b33",
  "ext": {
    "name": "wechat",
    "attr": {
      "host": "open.weixin.qq.com",
      "users": [
        "user_1",
        "user_2"
      ]
    }
  },
  "extPages": {
    "pages/logs/logs": {
      "navigationBarTitleText": "logs"
    }
  },
  "window":{
    "backgroundTextStyle":"light",
    "navigationBarBackgroundColor": "#fff",
    "navigationBarTitleText": "Demo",
    "navigationBarTextStyle":"black"
  },
  "tabBar": {
    "list": [{
      "pagePath": "pages/index/index",
      "text": "首頁"
    }, {
      "pagePath": "pages/logs/logs",
      "text": "日志"
    }]
  },
  "networkTimeout": {
    "request": 10000,
    "downloadFile": 10000
  }
}

ext.json中的配置字段分為兩種

  • 特有的字段
  • app.json相同的字段

特有的字段

屬性 類型 必填 描述
extEnable Boolean 配置 ext.json 是否生效
extAppid String 配置 extAppid
ext Object 開發(fā)自定義的數(shù)據(jù)字段
extPages String Array 單獨設置每個頁面的 json

extEnable

extEnable是一個Boolean類型的字段,用于規(guī)定當前的ext.json文件是否生效,開發(fā)者可以通過修改這個字段來開啟和關(guān)閉 extAppid 的結(jié)合開發(fā)。

 

extAppid

extAppid是授權(quán)調(diào)試的AppID,例如開發(fā)者在此處填寫的是wxf9c4501a76931b33那么在extEnable為真的情況下,后續(xù)的開發(fā)邏輯都會基于wxf9c4501a76931b33來運行。

 

ext

ext字段是開發(fā)自定義的數(shù)據(jù)字段,在小程序中可以通過 wx.getExtConfigSync 或者 wx.getExtConfig 獲取到這些配置信息。

例如上面的例子中,通過wx.getExtConfigSync就可以獲得ext字段的所有配置

{
  "name": "wechat",
  "attr": {
    "host": "open.weixin.qq.com",
    "users": [
      "user_1",
      "user_2"
    ]
  }
}

 

extPages

extPages是一個對象,對象中的每個key應該是該小程序模板app.json中定義的頁面,每個key對應的value是 page.json 中所規(guī)定的各項配置。

當開發(fā)者設置這個配置以后,小程序框架會對應的修改相對應的page的配置信息。

app.json相同的字段

ext.json中的字段同app.json中一致時,ext.json的字段會覆蓋app.json中的對應字段,例如以下的ext.json

{
  ········
  "window":{
    "backgroundTextStyle":"light",
    "navigationBarBackgroundColor": "#fff",
    "navigationBarTitleText": "ext navigationBarTitleText",
    "navigationBarTextStyle":"black"
  }
}

那么該小程序最終的navigationBarTitleText應該是ext navigationBarTitleText。

更多微信小程序開發(fā)教程,可以關(guān)注hi小程序。
重磅推薦:小程序開店目錄

第一部分:小商店是什么

第二部分:如何開通一個小商店

第三部分:如何登錄小商店

第四部分:開店任務常見問題

第五部分:小商店可以賣什么

第六部分:HiShop小程序特色功能

第七部分:小程序直播

第八部分:小程序收貨/物流

第九部分:小程序怎么結(jié)算

第十部分:小程序客服

第十一部分:電商創(chuàng)業(yè)

第十二部分:小程序游戲開發(fā)