當前位置:編程學習大全網 - 源碼破解 - uniapp開發APP從開發到上架全過程

uniapp開發APP從開發到上架全過程

前端時間受朋友委托幫他開發了壹款APP,綜合考慮了下,沒有上原生,使用了uniapp這壹套技術棧來進行開發uniapp是dcloud推出的壹套跨端前端解決方案,可以通過壹套代碼生成小程序、安卓、IOS、H5等代碼,對於中小項目來說是壹套絕對的效率利器技術架構前端采用uniapp後端使用Thinkphp做後端管理和接口,用到了壹套開源的後端管理系統easyadmin,之所以選用他是因為他能夠通過壹條命令自動生成curd管理頁面,並且可以通過配置來快速實現字段表格、搜索等功能,可以說也是壹個效率神器了。數據庫采用了最常見的mysql數據庫這個沒什麽好說的雲存儲使用了七牛雲存儲,因為項目中包含了大量的視頻資源,因此將靜態資源放置到雲存儲上是壹個不錯的選擇開發uniapp的開發相對來說還是簡單的,開發過Vue或者微信小程序的朋友幾乎能無縫上手,只需要瀏覽下官方文檔即可,其API與小程序的API的大同小異,基本將中的標簽元素,不同的是普通HTML中使用的是<div>標簽,而在uni中使用的是<view>標簽,需要註意的是在template下只能包含壹個view標簽,其他標簽則都包含在此標簽下邊。第二部分是script包括的JS代碼,使用exportdefault對象將JS中的代碼導出,內部結構則是Vue的數據結構,包含了data(),methods()等方法和壹些uni的生命周期函數。第三部分則是style標簽包裹的css代碼,與HTML的css代碼如出壹轍。<template><view></view></template><script>exportdefault{data(){return{}},methods:{}}</script><style></style>頁面配置uni中編寫的所有頁面都需要在page.json中進行註冊,未註冊的頁面則無法進行跳轉和顯示,在page數組中配置頁面參數即可,也可以每個頁面的對象下邊配置style對象來定義頁面的標題欄等信息通過配置globalStyle對象可以實現APP全局相關參數的配置,具體配置項可以參考uniapp官方文檔(uni-app官網)另外也可以通過配置tabBar對象來實現自動生成APP的標簽TABAPP.VUEapp.vue是整個項目的主入口,在此處的onLaunch在APP初啟動的時候會進行調用,可以在此處做壹些APP初始化的相關操作<script>exportdefault{onLaunch:function(){console.log('ApponLaunch')},onShow:function(){console.log('AppShow')},onHide:function(){console.log('AppHide')}}</script>同樣,在此頁面編寫的css也會對所有頁面起作用,可以將壹些全局的css放在此處,如主題色之類。APP設置manifest.json是整個項目的設置文件,涵蓋了項目的AppId、應用名稱、版本以及APP、小程序的相關設置,通過Hbuilder編輯器可以以可視化的方式對項目進行設置,也可以通過源碼視圖來對項目進行設置請求封裝作為壹款可以上線運營的APP,必然是要可以展示各類數據的,而展示數據就需要對接後端API來進行,為了方便開發和後邊維護,可以將請求單獨封裝為壹個文件來進行統壹處理。在項目根目錄創建common文件夾,新建))我們基於此API對請求進行封裝,方便在調用接口的時候進行使用。constbaseUrl='/api/';/*封裝ajax函數*@param{string}opt.typeplete=opt.complete||function(){};uni.request({method:opt.method,dataType:'json',url:opt.url,data:opt.data,header:getHeader(),success:(res)=>{uni.hideLoading()//console.log(res)if(res.data.code==200){opt.success(res.data);}else{uni.showToast({title:res.data.message,icon:"none"})opt.fail(res);}},fail:(res)=>{uni.hideLoading()console.log(res)uni.showToast({title:res.data?res.data.message:'網絡連接失敗',icon:"none"})console.log(opt)opt.fail(res);},complete:(res)=>{uni.hideLoading()opt.complete(res);},})}為了統壹管理,我將所有的後端API路徑也都放在此處constbindAjax=function(data,success,fail){ajax({url:'xxx/xxx',method:'POST',data:data,success:function(res){if(res.code==200){success(res.data)}},fail:(e)=>{fail(e)}})}然後通過erxport將我們定義好的方法名暴露即可exportdefault{ajax,bindAjax}最後,想要在頁面中調用,還需要在main.js中創建全局變量importmon/http.js';Vue.prototype.http=http;這樣我們就可以在頁面中使用this來進行調用了this.http.bindAjax({a:1,b:2}(e)=>{//成功後返回的數據console.log(e)},(e)=>{//請求失敗})完整文件看這裏(1條消息)uniapp統壹請求封裝-Javascript文檔類資源-CSDN文庫插件引用uniapp的另壹個優點就是插件足夠多,這樣可以避免開發者重復造輪子,對於常用的插件開發者可以直接引用,極大的節省開發時間和成本。訪問Dcloud插件市場(DCloud插件市場)即可以搜索需要的插件,如我們需要壹塊類似淘寶那樣的搜索插件,就可以直接搜索“搜索插件”來進行檢索找到我們需要的插件後,可以直接在插件詳情頁右側選擇使用HbuilderX導入插件,就可以將插件自動導入我們的項目中需要註意的是,要註意插件的平臺兼容性,許多插件是專門為某個平臺如微信小程序獲安卓APP等進行設計的,那個如果我們將此插件使用到其他平臺上則可能會引發兼容問題接下來,我們就可以開始愉快的編碼了~下壹篇,使用Hbuilder進行真機測試,敬請期待!

  • 上一篇:密室逃脫之深紅色房間——看看妳的智商
  • 下一篇:上海浦發銀行開通網上銀行是不是也有個U盾啊?和建設銀行形式壹樣嗎?需要交錢嗎?
  • copyright 2024編程學習大全網