3月13日,微信小程序插件功能上線;8月底,在時隔半年後,爲進一步推廣插件功能,微信在開發者社區上線了插件版塊。html
小程序插件是能夠被開發者添加到小程序內直接使用的,能爲用戶提供具體服務的功能組件——小程序
在最新上線的社區插件版塊中,插件使用者能夠搜索並查看插件的名稱、AppID、適用行業及場景、線上案例等信息。微信小程序
想了解更多詳情,歡迎訪問開發者社區插件版塊(建議電腦訪問):微信
🔗 https://developers.weixin.qq....網絡
手機端用戶也能夠掃碼訪問 👇ui
小程序的初衷是但願更好地鏈接用戶和服務。自上線以來,愈來愈多的商戶、開發者開發本身的小程序。spa
早晨起來在小區電梯內,掃小程序碼,便可叫個早餐外賣;走到門口,掃共享單車的二維碼,騎車即走;到了公司,便可打開小程序輕鬆打卡,開始美好的一天上班生活……插件
而隨着小程序的普及,愈來愈多的路邊小攤、餐飲小店、夫妻店也但願接入小程序,許多商家會反映亟待解決的問題到微信平臺:code
我只會簡單開發,不會作複雜的功能怎麼辦?
我也想給餐館小程序作一個預定訂餐功能,要怎麼搞?
客戶能夠在個人小程序裏查詢快遞信息嗎?
我沒有數據,能夠在小程序裏作地圖查找功能嗎?
……
根據用戶的反饋,咱們總結出了你們目前遇到的三大難題:htm
開發技術有限,實現複雜功能難度大;
人力、設備、資源有限,實現服務成本高;
缺少某些類目的資質,如電商、打車。
對於以上問題,咱們推出了小程序插件來解決。
1.開發共享,避免重複開發
在小程序內使用插件,可免去小程序開發者重複開發,必定程度上減小了開發工做量。
如:在旅遊景區的小程序可使用地圖插件,開發者無需在小程序內獨立開發地圖內導航、出行指引、周邊服務推薦等能力,直接使用地圖插件便可爲用戶提供導航服務,免去很大量的開發工做。
2.插件可提供針對行業的完整服務,同時覆蓋線上線下
商家但願藉助小程序更好地鏈接用戶和服務,包括線上、線下服務。線下服務每每人力成本、硬件設備等要求較高,商家在小程序內提供完整服務的門檻較高。而插件不只能夠解決線下服務的問題,還能針對特定行業提供全套完整服務。
以景區服務小程序爲例,使用門票購買插件,用戶可在小程序內完成門票線上預訂、購買等流程,在到達景區後,經過插件服務提供商提供的移動終端或硬件設備,可完成門票兌換、覈銷。
而對於餐飲、零售等線下行業而言,插件更是極大下降了商家的成本,商家可使用預訂、排隊、外賣等插件,由插件開發者提供線下服務,商家只需在小程序內引用插件,便可使用由插件開發者提供的預訂、外賣等服務,節省了成本。
3.下降服務門檻的問題,實現「服務共享」
具備開發能力及服務資質的開發者,可將本身的服務封裝成插件,提供給其餘小程序使用,實現「服務共享」。
插件自己的技術原理並不複雜。插件代碼由一些自定義組件和 JS 代碼文件構成,插件開發者在發佈插件時,這些代碼被上傳到微信後臺保存起來。
當小程序使用插件時,使用者需填寫插件的 AppID 和版本號,以便從後臺獲取相應的插件代碼。小程序代碼編譯時,插件代碼會被嵌入到小程序中,與小程序一塊兒編譯運行。
根據須要,插件代碼能夠提供 JS 接口或自定義組件供小程序調用。JS 接口能夠用於界面無關的邏輯,自定義組件能夠嵌入界面中展現。
對於插件使用者來講,插件的調用方法很簡單。
使用插件 JS 接口
與普通 JS 文件間 require 的方式同樣,只需將 require(FILE_NAME)
改爲requirePlugin(PLUGIN_NAME)
這樣的調用形式。
使用插件提供的自定義組件
與使用普通自定義組件的方法很是類似。在 JSON 文件的 usingComponents
段落中,按照plugin://PLUGIN_NAME/COMPONENT_NAME
的形式使用便可。
對於插件開發者而言,這裏給出幾點建議:
提供充分的接口文檔和示例,方便插件使用者瞭解插件的使用方法;
注意保持插件不一樣版本間接口的穩定,使插件使用者能順利升級插件;
計算小程序代碼包大小時,插件代碼也會一併計算在內,因此應當控制好插件代碼的大小。
插件代碼的運行環境與小程序代碼有必定的區別,主要是如下兩點:
插件能夠發起網絡請求的域名與小程序不一樣,所以插件開發者須要注意在插件後臺的設置中正確配置網絡請求域名。
插件能夠調用的 API 有必定的限制,並非全部的接口插件均可以調用,如頁面跳轉相關的接口是不容許插件調用的。插件開發者在使用一些特殊接口前,請查詢文檔中的插件可調用接口列表。
此外,目前一個小程序最多可以使用 5 個插件,趕忙將插件用起來,節約開發者成本吧。
詳情可參考《小程序插件接入指南》(建議電腦訪問):
🔗https://developers.weixin.qq....
內容來自:微信開放社區《小程序·小故事》欄目
做者:小 k、LastLeaf
任何問題,歡迎前往微信開放社區: https://developers.weixin.qq.com
瞭解更多小程序開發相關內容,歡迎微信掃描下方二維碼關注微信極客WeGeek公衆號,共築微信生態。