低代碼從0到1創建小程序項目詳解流程
我們使用代碼編程的時候,前端是寫標簽,後端是寫if/else、for循環來執行邏輯處理。
那低代碼如何體系化的學習呢?這裡我們按照代碼方式學習做個對照。
1 搭建開發工具
一般如果我們使用微信開發者工具,開發小程序需要安裝工具。低碼工具不需要安裝,是在線進行編程。但和開發者工具一樣,低碼也是需要綁定小程序的。我們在開發者工具裡一般是需要配置自己小程序的appid,如果使用瞭雲開發的,還需要開通雲開發。
我們使用低碼開發需要在小程序認證那塊,綁定自己的小程序。
我這裡一個綁定成功瞭,一個綁定失敗瞭。失敗的原因是小程序和我們的低碼賬號不是同主體,意思是必須以你自己的微信號申請,不能綁定別人的小程序。
2 創建項目
我們使用微信開發者工具,打開工具的時候就要求創建項目,所謂的創建項目是在你本地新建一個文件夾,然後按照小程序項目的要求生成對應的目錄結構。比如有js、json、wxml、wxss等。
低碼中我們講的創建項目是指創建應用,一個應用就相當於一個項目。不同於小程序,低碼的外延更廣,可以創建PC端的項目,也可以創建移動端的項目。移動端的項目不僅可以創建小程序,也可以創建H5。
而且比小程序方便的是,低碼是可以根據模板創建項目的。所謂的模板是指事先已經開發好的項目,就像我們從github上clone一樣。當你clone完畢後整個工程的源代碼就都下載到瞭本地。低碼中依據模板新建是將做好的項目安裝到你自己的空間裡。這樣你就有瞭一套成熟的模板,可以在此基礎上進行修改。這樣做無疑大大的提高瞭開發效率。
3 功能開發
微信小程序獨創瞭一套語法,分別是wxjs、wxml、wxss。如果我們希望開發難免增加瞭不少難度,因為又得單獨學習一套語法。低碼的話組件是使用的react,低碼編輯器裡是用的javascript。後臺方法是用的雲函數,學習nodejs即可。總體你隻要學會瞭Js開發低碼應用是沒啥問題的。
低碼中也有頁面的概念,但是是可視化創建的。
頁面開發的時候完全是可視化的拖拽,並不需要學習啥語法知識
如果需要給組件設置事件的,可以使用平臺方法,也可以使用自定義方法
自定義方法是按照Js語法進行編程
export default { async onAppLaunch(launchOpts) { //console.log('---------> LifeCycle onAppLaunch', launchOpts) const { OPENID, FROM_OPENID } = await app.utils.getWXContext() let userId = FROM_OPENID || OPENID if (!userId) { const { wedaId } = await app.cloud.getUserInfo() userId = wedaId } app.dataset.state.openid = userId console.log(app.dataset.state.openid) const result = await app.cloud.callModel({ name: 'user_h4la7ee', methodName: 'wedaGetRecords', params: { "where": [ { "key": "openid", "rel": "eq", "val": app.dataset.state.openid } ] }, // 方法入參 }); console.log(result.total) if(result.total ===1){ app.dataset.state.islogin = true app.dataset.state.imageUrl = result.records[0].imageUrl app.dataset.state.nickName = result.records[0].nickName } console.log(app.dataset.state.islogin,app.dataset.state.imageUrl,app.dataset.state.nickName) const adminresult = await app.cloud.callModel({ name: 'admin_qohkmr5', methodName: 'wedaGetRecords', params: { "where": [ { "key": "openid", "rel": "eq", "val": app.dataset.state.openid } ] }, // 方法入參 }); console.log(app.dataset.state.openid) console.log(adminresult) if(adminresult.total===1){ app.dataset.state.isadmin = true } console.log("isadmin",app.dataset.state.isadmin) }, onAppShow(appShowOpts) { //console.log('---------> LifeCycle onAppShow', appShowOpts) }, onAppHide() { //console.log('---------> LifeCycle onAppHide') }, onAppError(options) { //console.log('---------> LifeCycle onAppError', options) }, onAppPageNotFound(options) { //console.log('---------> LifeCycle onAppPageNotFound', options) }, onAppUnhandledRejection(options) { //console.log('---------> LifeCycle onAppUnhandledRejection', options) } }
4 後端實現
小程序一般隻能解決前端交互的功能,後端你必須自己開發功能,安裝到服務器上還需要暴露接口。但是一般我們的後臺服務都是需要鑒權的,不可能像網站一樣公開使用。低代碼提供瞭後端的雲函數,直接使用就可以。如果官方提供的不滿足要求,還可以自己編寫代碼
使用 npm 包 request 發送http請求, 詳細使用文檔可以參考
https://github.com/request/request#readme
const cloud = require('wx-server-sdk') cloud.init({ env: cloud.DYNAMIC_CURRENT_ENV, }) module.exports =async function (params, context) { // params 即為入參定義的結構, 可以在 request 的請求配置中使用 params try { console.log("cloud",params.templateid) const result = await cloud.openapi.subscribeMessage.send({ "touser": params.openid, "page": 'my', "lang": 'zh_CN', "data": { "thing2": { "value": params.thing2 }, "date3": { "value": params.date3 } }, "templateId": params.templateId, "miniprogramState": 'trial' }) console.log("result",result) return result } catch (err) { return err } };
總結
我們今天用瞭一定的篇幅概要的介紹瞭一下使用低碼是如何從0到1構建應用的。當然就像我開篇講的,如果想要熟練開發出應用,找一套體系化的教程,外加老師的輔助還是有必要的。那些想跨行業進入軟件開發領域的,不防嘗試一下低碼的解決方案,希望能給你帶來不一樣的體驗。
到此這篇關於低代碼從0到1創建小程序項目詳解流程的文章就介紹到這瞭,更多相關0到1實現小程序內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!