微信小程序開發邊做邊學 課件 操作篇-微信小程序 第7、8章 簽到測距模塊開發、初識后臺與數據庫_第1頁
微信小程序開發邊做邊學 課件 操作篇-微信小程序 第7、8章 簽到測距模塊開發、初識后臺與數據庫_第2頁
微信小程序開發邊做邊學 課件 操作篇-微信小程序 第7、8章 簽到測距模塊開發、初識后臺與數據庫_第3頁
微信小程序開發邊做邊學 課件 操作篇-微信小程序 第7、8章 簽到測距模塊開發、初識后臺與數據庫_第4頁
微信小程序開發邊做邊學 課件 操作篇-微信小程序 第7、8章 簽到測距模塊開發、初識后臺與數據庫_第5頁
已閱讀5頁,還剩66頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第七章:簽到測距模塊開發ontents目錄簽到測距頁面布局01實現測距功能02C位置相關信息API調用03課前討論二十大代表胡偉武:自主研發中國人的CPU

胡偉武,龍芯中科技術股份有限公司董事長,中國科學院計算技術研究所研究員,博士生導師。在他的帶領下,“龍芯1號”研發成功,這是中國第一枚擁有自主知識產權的通用高性能微處理芯片,而后又主持研制了“龍芯”系列芯片,實現了我國CPU關鍵核心技術的突破。

“對任何一臺計算機而言,CPU和操作系統都是最核心的兩個底層技術?!焙鷤ノ湔f,其實早在上個世紀,中國的科研人員就有了自主研發CPU的念頭。他常常想起“玻璃房子”的故事。20世紀90年代,《瓦森納協定》對包括計算機在內的中國尖端科技實施全面封鎖。“我們國家那時候進口美國的高性能計算機,用于天氣預報、石油勘探,有時候還需要通過元首外交才能解決?!焙鷤ノ湔f,由于進口時承諾過不能用于軍事目的,機房外面需要蓋一個玻璃墻。玻璃里面,中國科學家上機操作,而玻璃外面,美國派來的專家會盯緊他們的一舉一動。胡偉武和團隊的艱難歷程1998年4月,胡偉武的導師夏培肅聯合金怡濂院士、周毓麟院士召開香山科學會議,研討我國高性能計算機怎么發展,胡偉武作為會議秘書參會。會議的第三天,大家就開始討論CPU的自主研發。1999年,時任中科院計算所所長的李國杰開始呼吁,在“十五”期間做中國自主的CPU。不久后,時年33歲的胡偉武承擔了研發CPU的課題,并獲得100萬的資金支持。2001年6月,研究團隊迅速擴大至三五十人。2001年5月,胡偉武結束了一次國際會議,回國后便開始全力投入做CPU設計。由于時間緊張,在確定流水線結構時,團隊來不及看論文,也來不及做實驗,胡偉武和伙伴們靠著過去的知識積累,憑著感覺往前走。2002年8月10日凌晨6時08分,login提示符出現在屏幕上,整個實驗室一片歡呼,這個提示符意味著,安裝了“龍芯1號”CPU的計算機成功啟動工作。雖然這款CPU的性能上仍存在較大差距,但中國人只能依靠進口CPU制造計算機的歷史終結了。2010年,胡偉武決定創辦企業,繼續深入研發的同時,讓龍芯走向產業化。之后經歷了資金短缺,人才流失,產品性能跟不上等各項問題和挑戰,團隊不斷克服直至

2015年,龍芯銷售額過億元,龍芯系列產品被應用在交通、黨政、能源、電力、石油等領域,龍芯中科終于實現了盈虧平衡。到2022年,國產的CPU性能,已經逼近市場主流的CPU產品了,目前龍芯致力于提高性價比,在實現自主性的同時接受開放性市場的考驗。

大力弘揚工匠精神

什么是工匠精神?有人會說:對于個人,工匠精神是干一行、愛一行、專一行、精一行,務實肯干、堅持不懈、精雕細琢的敬業精神;對于企業,是守專長、制精品、創技術、建標準,持之以恒、精益求精、開拓創新的企業文化;對于社會,是講合作、守契約、重誠信、促和諧,分工合作、協作共贏、完美向上的社會風氣。工匠精神也是“執著專注、精益求精、一絲不茍、追求卓越”十六個字。胡偉武及其團隊的不懈努力彰顯了工匠精神的新時代價值,體現了大國工匠的責任與擔當。工匠精神是我國優秀傳統文化的重要內容和寶貴財富?!犊脊び浗狻分校爸苋松形牟?,古雖有車,至周而愈精,故一器而工聚焉。如陶器亦自古有之。舜防時,已陶漁矣,必至虞時,瓦器愈精好也?!狈从车恼俏覈糯哪芄で山硞儾粩嘧非蠹妓嚲M的精神品格。工匠精神助力高質量發展二十大聚焦:錨定高質量建功新時代。報告指出:“建設現代化產業體系。堅持把發展經濟的著力點放在實體經濟上,推進新型工業化,加快建設制造強國、質量強國、航天強國、交通強國、網絡強國、數字中國?!?。10年來,我國全社會研發經費支出從一萬億元增加到二萬八千億元,居世界第二位,研發人員總量居世界首位?;A研究和原始創新不斷加強,一些關鍵核心技術實現突破,戰略性新興產業發展壯大,載人航天、探月探火、深海深地探測、超級計算機、衛星導航、量子信息、核電技術、大飛機制造、生物醫藥等取得重大成果,進入創新型國家行列。實現中華民族偉大復興的中國夢的新時代,呼喚并迫切需要大國工匠精神。就是要把“工匠精神”打造成一個大國、強國的重要精神支柱。凱歌奮進,揚帆遠航。如今,每一位勞動者都是主角,更加需要“工匠精神”的引領,并成為“工匠精神”的踐行者。讓我們對“工匠精神”多一份敬重敬畏、多一份純粹、多一份腳踏實地、多一份專注持久。

簽到測距頁面布局01ranspageT浙江工商大學7.1簽到測距頁面布局

(1)添加簽到tabBar右擊pages目錄,單擊“新建目錄”按鈕,命名為signin。右擊signin目錄,單擊“新建Page”按鈕。命名為signin,完成簽到測距頁面的新建。去icon下載網站下載兩個圖片作為簽到測距頁面的icon與selectedIcon,將下載的圖片存放在doudouyun項目的images文件夾下。浙江工商大學7.1簽到測距頁面布局

app.json文件的tabBar屬性的代碼"tabBar":{

"list":[{

"pagePath":"pages/index/index",

"text":"主頁面",

"iconPath":"images/tab_account1.png",

"selectedIconPath":"images/tab_account2.png"},{

"pagePath":"pages/signin/signin",

"text":"簽到",

"iconPath":"images/signin2.png",

"selectedIconPath":"images/signin1.png"},{

"pagePath":"pages/my/myinfo",

"text":"我的",

"iconPath":"images/tab_course1.png",

"selectedIconPath":"images/tab_course2.png"}]},pages/signin/signin為簽到測距頁面的頁面路徑images/signin2.png為簽到測距頁面的片路徑images/signin1.png為被選中時的圖片路徑浙江工商大學7.1簽到測距頁面布局

(2)簽到測距頁面基本布局簽到測距頁面主要包括了四個部分,分別是選擇位置、獲取當前位置、測距按鈕和所測得的距離將測量的距離顯示在初始值為“helloworld”的view組件中。浙江工商大學7.1簽到測距頁面布局

★選擇位置與獲取當前位置①在WeUI樣式庫的表單->list中找到帶說明、帶跳轉的列表項②將該列表項的wxml代碼拷貝至signin.wxml文件中③修改代碼中對應的文字,并將代碼中原本的navigator組件改為view組件,刪除組件中的url屬性<view

class="weui-cellsweui-cells_after-title">

<view

class="weui-cellweui-cell_access"

hover-class="weui-cell_active">

<view

class="weui-cell__bd">選擇位置</view>

<view

class="weui-cell__ftweui-cell__ft_in-access">()</view>

</view>

<view

class="weui-cellweui-cell_access"

hover-class="weui-cell_active">

<view

class="weui-cell__bd">獲取當前位置</view>

<view

class="weui-cell__ftweui-cell__ft_in-access">()</view>

</view></view>修改后的代碼?浙江工商大學7.1簽到測距頁面布局

★測距按鈕①在WeUI樣式的表單->button中找到“頁面主操作Normal”按鈕②將對應button的wxml代碼拷貝至signin.wxml中③將“頁面主操作Normal”改為“測距”<button

class="weui-btn"

type="primary">測距</button>浙江工商大學7.1簽到測距頁面布局

添加button后,編譯發現測距button的兩端占滿了這個頁面,沒有空隙,相對不是很美觀在signin.wxss中添加測距buttion組件中對應的weui-btn樣式.weui-btn{

margin:

20px

15px;}樣式代碼添加后的樣式浙江工商大學7.1簽到測距頁面布局

(3)測距結果在signin.wxml中添加一個view組件,用于顯示變量{{motto}},在signin.js文件的data數組中添加變量motto,初始值為“helloworld”,添加的代碼具體如下:signin.wxml代碼<view

class="motto">{{motto}}</view>signin.wxss代碼.motto{

margin-top:

150px;

text-align:

center}sign.js代碼data:{motto:'helloworld',},motto樣式中,margin-top屬性用于控制該組件與上一個button組件之間的距離,text-align值為center則是為了使得該組件居中。位置相關信息API調用02ranspageT浙江工商大學7.2位置信息相關API調用★選擇位置API(1)在signin.wxml文件選擇位置所在列表項的view組件中添加bindtap函數chooseLocation,并在signin.js文件的data數組中添加一個

choosen數組,其中choosen數組中有latitude和longitude兩個變量,變量初始值為0。(2)在signin.wxml文件選擇位置所在列表項中說明文字所在view組件,將“()”改為“({{choosen.longitude}},{{choosen.latitude}})”。這樣選擇位置對應的經緯度坐標初始值為(0,0)。(3)在signin.js文件中添加chooseLocation函數,使用wx.chooseLocation獲取所選目標位置的經緯度,并賦值給choosen數組的longitude和

latitude,chooseLocation函數的代碼chooseLocation:function(){wx.chooseLocation({success:(res)=>{

this.setData({choosen:res,})},})},浙江工商大學7.2位置信息相關API調用在wx.chooseLocation中使用console.log(res)打印成功回調函數的返回值浙江工商大學7.2位置信息相關API調用對chooseLocation函數進行簡單修改,也可以實現調用選擇位置API,并獲取目標位置的經緯度。修改后的代碼浙江工商大學7.2位置信息相關API調用chooseLocation函數寫完后,單擊“選擇位置”按鈕,會跳轉至選擇位置頁面,該頁面主要調用了騰訊地圖,選擇一個位置后,單擊“確定”按鈕,即跳轉回簽到測距頁面,可見選擇位置后面的經緯度坐標中顯示了所選位置的經緯度。浙江工商大學7.2位置信息相關API調用★獲取當前位置API(1)在signin.wxml文件獲取當前位置所在列表項的view組件中添加bindtap函數getLocation,并在signin.js文件的data數組中添加一個got數組,其中got數組中有latitude和longitude兩個變量,變量初始值為0。(2)在signin.wxml文件獲取當前位置所在列表項中說明文字所在view組件,將“()”改為“({{got.longitude}},{{got.latitude}})”。這樣獲取當前位置對應的經緯度坐標初始值為(0,0)。(3)在signin.js文件中添加getLocation函數,使用wx.getLocation獲取,并且在app.json添加權限聲明用戶當前位置的經緯度,并賦值給got數組的longitude和latitude,

getLocation函數的代碼getLocation:function(){wx.getLocation({type:'gcj02',success:(res)=>{

this.setData({got:res,})},})},"permission":{

"scope.userLocation":{

"desc":"你的位置信息將用于學習在線簽到到功能"

}}浙江工商大學7.2位置信息相關API調用在wx.getLocation中使用console.log(res)打印成功回調函數的返回值浙江工商大學7.2位置信息相關API調用getLocation函數寫完后,單擊“獲取當前位置”按鈕,即可看見獲取當前位置后面的經緯度坐標中顯示了用戶當前位置的經緯度實現測距功能03ranspageT浙江工商大學7.3實現測距功能★巧用button的disabled屬性(1)在signin.js文件的data數組中定義flag1和flag2兩個變量,用來表示是否完成位置選擇和是否獲取當前位置信息,初始值為false,當調用選擇位置

API時,給變量flag1賦值為true,當調用獲取當前位置API時,給變量

flag2賦值為true。signin.js中data數組代碼data:{motto:'helloworld',choosen:{latitude:0,longitude:0},got:{latitude:0,longitude:0},flag1:false,flag2:false},signin.js中chooseLocation代碼

chooseLocation:function(){wx.chooseLocation({success:(res)=>{this.setData({choosen:res,flag1:true})},})},signin.js中getLocation代碼getLocation:function(){wx.getLocation({type:'gcj02',success:(res)=>{

this.setData({got:res,flag2:true})},})},浙江工商大學7.3實現測距功能(2)在signin.wxml文件的button組件中添加一個disabled屬性代碼如下:<button

class="weui-btn"

type="primary"

disabled="{{!(flag1&&flag2)}}"

>測距

</button>當兩個API均未被調用時,flag1和flag2均為false,!(flag1&&flag2)=true,測距按鈕被禁用當僅調用了選擇位置API時,flag1值為true,flag2值為false,!(flag1&&flag2)=true,測距按鈕被禁用浙江工商大學7.3實現測距功能當僅調用了獲取當前位置API時,flag1值為false,flag2值為true,!(flag1&&flag2)=true,測距按鈕仍被禁用當且僅當兩個API均被調用時,flag1和flag2均為true,!(flag1&&flag2)=false,測距按鈕可用浙江工商大學7.3實現測距功能★js實現經緯度測距(1)給測距按鈕添加一個bindtap函數,名為calculate,具體代碼如下:

<button

class="weui-btn"

type="primary"

disabled="{{!(flag1&&flag2)}}"

bindtap='calculate'>測距</button>

(2)經緯度測距通過數學公式計算,測距的代碼可以去網上找,在網上可以找到很多相關的代碼,本文主要參考了標題名為“js根據經緯度計算兩點距離”的博客,該博客鏈接為:

/weixin_40687883/article/details/80361779。將其中的測距相關的js代碼拷貝至signin.js,并根據情況進行簡單修改。浙江工商大學7.3實現測距功能Rad:function(d){

returnd*Math.PI/180.0;},

calculate:function(){

letlat1=this.data.choosen.latitude

letlat2=this.data.got.latitude

letlng1=this.data.choosen.longitude

letlng2=this.data.got.longitudevarradLat1=this.Rad(lat1);

varradLat2=this.Rad(lat2);

vara=radLat1-radLat2;

varb=this.Rad(lng1)-this.Rad(lng2);

vars=2*Math.asin(Math.sqrt(Math.pow(Math.sin(a/2),2)+Math.cos(radLat1)*Math.cos(radLat2)*Math.pow(Math.sin(b/2),2)));s=s*6378137.0;//取WGS84標準參考橢球中的地球長半徑(單位:m)s=Math.round(s*10000)/10000;s=s.toFixed(2)

this.setData({motto:s+'m'})},具體代碼:Rad函數主要是進行單位換算,將度轉換為弧度。Math.asin為反正弦函數Math.sqrt()方法用于計算平方根Math.pow(x,y)方法用于計算x的y次冪的值Math.round()方法用于數字的四舍五入toFixed()方法可以把number四舍五入為指定小數位數的數字。通過以上計算公式求出的距離單位為m。浙江工商大學7.3實現測距功能選擇好目標位置,并獲取用戶當前位置后,單擊“測距”按鈕,所測得的距離則顯示在button下方,替換motto的初始值“helloworld”。感謝聆聽!第八章:初識后臺與數據庫ontents目錄本地環境安裝與測試01后臺api開發C02課前討論

王恩東,男,漢族,1966年7月出生,山東濟南人,計算機專家、中國工程院院士、中國共產黨黨員?,F任浪潮集團副總經理、首席科學家科學家王恩東:讓高端服務器有了“中國造”

30多年來,在王恩東及其團隊的努力下,浪潮在服務器領域實現從無到有、從弱到強的發展,成長為中國第一、全球第二大服務器供應商,為我國實現服務器領域關鍵技術突破作出了重大貢獻。

堅持不懈努力下,2012年,浪潮正式發布了高端容錯計算機系統“天梭K1”,這是中國第一臺高端服務器,我國成為世界上第三個掌握高端服務器技術的國家。該成果榮獲國家科學技術進步獎一等獎。

近年來,在攻克了高端容錯計算機難題后,王恩東又瞄上了前沿領域。他先后主持研發了中國第一代適合云計算時代的新型云服務器、人工智能服務器等產品,并不斷快速迭代產品,讓浪潮成為全球最大的云服務器供應商,在全球人工智能服務器市場份額也保持第一。

國產服務器崛起

隨著信息化對經濟、社會發展的不斷滲透,各個行業的系統的核心部分都對交易數據的處理,在大規模的在線交易數據處理中之前很難找到承載設備來替代國外主機。

國外廠商更是在國內構建了嚴密的技術封鎖體系,通過一切手段對中國進行技術封鎖,主機技術就主要禁運之一。由此,關鍵應用主機不僅是高端服務器市場利潤的主要來源,也是整個軟硬件產業的核心。面對IT產業巨頭完善的關鍵應用主機技術,例如IBMPower,HPSuperdome形成封閉而成熟的技術體系,國產服務器崛起勢在必行。

掌握大服務器產業,就掌握信息產業話語權。在這樣的策略下,中國主機領域從保持著“有市場、無技術、無產業”的狀態,到如今體系結構設計和核心技術的突破。中國設立自己的域名根服務器中國設立自己的域名根服務器,從零變成世界第二根服務器的存在主要用于DNS的解析,DNS可當作郵政編碼,根域名服務器就是郵遞員會通過這個郵政編碼更快的投遞郵件,解析域名。通常情況下,根域名服務器解析DNS是非常準確的。中國的互聯網信息中心一共設立了4臺域名根服務器,有F、L、K、L根鏡像服務器。此外還有工信部批復的香港域名服務器,因此還有JX0007L的域名根服務器。在IPv4時代,我國沒有互聯網的根域名服務器,全球只有13臺根域名服務器,其中唯一的主根服務器在美國,其他12臺輔助根域名服務器分布在美國、日本、歐洲,下圖顯示了一臺標識為“K”的根域名服務器。我們訪問一個網站時,通常使用域名訪問,經域名服務器翻譯成IP地址,才能夠訪問某個網站,因此域名服務器可以說是互聯網的基礎設施。

美國控制了域名根服務器,也就控制了所有的域名,如果美國不想讓人訪問某些域名,就可以屏蔽掉這些域名,相當于這些域名所指向的網站在互聯網上消失了,2004年4元,美國將".ly"的域名癱瘓,導致利比亞在互聯網上消失了3天。為何要設立中國自己的根服務器?世界各國對美國互聯網依賴性大,全部的IPv4根服務器都是在美國政府授權的互聯網域名和號碼分配機構ICANN統一管理,一直負責全球互聯網域名IPv4根服務器、域名體系和IP地址等等管理。所以美國利于對根服務器的控制就可以完全控制互聯網,這種情況對其他國家網絡安全造成潛在的重大威脅。

此外,在移動互聯網、物聯網、工業4.0的發展下,迎來了更多的入網終端,這樣傳統PC、手機到loT終端,都需要通過IP地址接入互聯網,因此未來將超過五百億的設備在線,地址需求數量會是IPv4地址總數超過十倍,但當前的IPv4地址的分配完成,出現緊缺的現象。

隨著互聯網的發展,IPv6發展成一項非常成熟的技術。不難發現IPv6擁有更多地址數量、更小路由表、更安全等優勢,有利于解決IPv4存在的問題。想更有效的解決地址不足,拓展獲得更多主動權、進一步實現多邊共治的情況,工信部早期通過了設立中國的根服務器管理機構,授權管理F、I、K、L根鏡像服務器。

從最初的全球十三臺根服務器,亞洲僅一臺根服務器部署在日本,而現在中國也有了根服務器,中國現存根服務器有4臺。本地環境安裝與測試01ranspageT8.1本地環境安裝與測試

★安裝Wampserver(1)在Wampserver官網下載一個Wampserver安裝包,要根據自己電腦的配置情況下載,以達到軟件安裝完后能以最佳狀態運行。

(2)雙擊解壓后的WampServer.exe文件,首先會彈出語言選擇,單擊“OK”按鈕,選擇默認的English即可。(3)選擇“Iaccepttheagreement”→Next;表示我同意接受條款,如不同意是不容許安裝的。8.1本地環境安裝與測試

(4)選擇安裝目錄E盤→Next,此處可根據自己喜好選擇,如果喜歡裝C盤也不是不可以,但為了避免因重裝系統而丟失文件,請選擇C盤以外的盤來安裝比較好。8.1本地環境安裝與測試

(5)下一個彈窗單擊“Install”,在安裝結束前,還會有是否選擇默認瀏覽器和是否選擇文本編輯器兩個彈窗,開發者可根據自身情況選擇默認瀏覽器與文本編輯器。(6)完成默認瀏覽器與文本編輯器選擇后,等待安裝進度結束,單擊“Next”按鈕,然后單擊“Finish”按鈕,即完Wampserver的安裝。8.1本地環境安裝與測試

(7)雙擊桌面Wampserver的快捷方式,查看Wampserver是否安裝成功,如果桌面右下角的圖標變綠色,則說明Wampserver啟動成功,如果圖標呈紅色或者橙色,則說明啟動失敗,Wampserver安裝還存在問題,遇到這種情況可以上網需求解答。8.1本地環境安裝與測試

★安裝SublimeSublime相關的安裝教程在網上有很多,安裝包也可以直接在網上找到并下載。配套資料中有Sublime安裝后的整個文件,開發者可以選擇直接將該文件夾放置于自己軟件安裝常用目錄下。打開文件夾,右擊“sublime_text.exe”,選擇“創建快捷方式”,并將該快捷方式拖至桌面。雙擊“sublime_text”圖標打開sublime編輯器。8.1本地環境安裝與測試

★搭建本地環境(1)存放后臺代碼將提供的后臺代碼放在Wampserver安裝目錄下wamp64->www文件夾中,可以單擊右下角的綠色圖標,然后單擊“wwwdirectory”按鈕,進入www文件夾。在后臺代碼的文件夾中,有一個名稱為“1”的文件夾,只有將該文件夾拷貝至www文件目錄下,后臺代碼才能在本地服務器上跑起來8.1本地環境安裝與測試

(2)導入數據庫文件單擊右下角的綠色圖標,然后單擊“phpMyAdmin”按鈕選擇phpMyAdmin后,瀏覽器中彈出phpMyAdmin登錄界面,其中,用戶名為root,密碼為空,單擊“執行”按鈕即可進入主頁。8.1本地環境安裝與測試

phpMyAdmin主頁單擊“新建”按鈕,新建數據庫的名字命名為pingshifen,排序規則選擇utf8_general_ci,單擊“創建”按鈕即可創建一個名為pingshifen的數據庫。8.1本地環境安裝與測試

新建完之后,選擇pingshifen數據庫,單擊“導入”按鈕,然后單擊“瀏覽”按鈕,選擇提供的pingshifen.sql文件,選擇完后,單擊頁面最下方的“執行”按鈕,將pingshifen.sql導入到本地數據庫中。8.1本地環境安裝與測試

導入成功后,可以看到pingshifen中有很多數據表,每個數據表分別用于存儲不同數據信息,比如說題庫信息存放在pingshifen_question_bank中。8.1本地環境安裝與測試

(3)修改服務器地址打開微信開發者工具中的doudouyun項目,打開config.js文件,將apiUrl改為“/1/index.php/Api”?!啊睘楸镜胤掌鞯刂?,訪問該服務器地址8.1本地環境安裝與測試

?后臺代碼對應的文件夾“1”在“YourProjects”目錄下。?“/”與“/index/Api”之間的路徑對應的是www文件目錄下的后臺代碼存放路徑。8.1本地環境安裝與測試

(4)重新注冊Api接口和申請課程注冊Api接口的鏈接變為:/1/index.php/Page/Index/register,申請課程號的鏈接變為:/1/index.php/Api/User/createCourse?appid=wx60dbecdccbea11f7&courseName=1028教學&questionSet=1012&creater=大佬申請完課程號后,還需要修改一下config.js中的courseId。編譯之后,會重新彈出提示注冊,在單擊“提交”按鈕時,會發現無法正常跳轉至首頁。這是由于在開發注冊頁面時,首頁并不是tabBar頁面,跳轉至首頁使用的是wx.redirectTo,但是現在首頁是tabBar頁面,使用wx.redirectTo無法實現跳轉,需要改為wx.switchTab。后臺api開發02ranspageT8.2后臺api開發★api實現前后臺交互

以index.js中的current為例,請求對應的url完整體為“/1/index.php/Api/User/current”。current請求“/1”為服務器地址“index.php”為入口文件“Api/User/current”為Api所在位置“Api/User/current”中,Api為后臺代碼中目錄名稱User為UserController控制器current為控制器中的方法8.2后臺api開發在后臺代碼中current方法的目錄在UserController.class.php的current方法后面寫一個新的test方法,簡單實現前后臺交互。前后臺的交互其實是單向的,服務器不會主動向前臺發送數據。也可以選擇別的控制器而非UserController,這個有興趣的自己修改8.2后臺api開發每次修改后臺代碼后都需要Crtl+s保存一下修改后的文件?!魌est方法(1)在PHP中使用ajaxReturn方法返回數據,test方法代碼如下:publicfunctiontest(){$this->ajaxReturn('測試通過');}(2)在myinfo.wxml文件中添加一個button,button名為測試,該button對應的代碼如下:<button

class="weui-btn"

type="primary"

bindtap='bindtest'>測試</button>bindtest為事件觸發函數8.2后臺api開發(3)在myinfo.js文件中添加bindtest函數,在bindtest函數中,使用wx.request({})訪問后臺代碼中的test方法,該函數代碼具體如下:bindtest:function(){wx.request({url:userUrl+'test',success:function(res){console.log('請求結果',res)}})},userUrl為從config.js中獲取到的變量,在index.js中已聲明該變量,如果該函數寫在其他頁面則需要聲明該變量。8.2后臺api開發代碼都寫完后,重新編譯小程序,單擊首頁中的“測試”按鈕,可以看到調試器的Console中打印出來的返回值,在data數組中有后臺返回的數據“測試通過”。8.2后臺api開發給bindtest函數中的wx.request({})添加data屬性,即在發起HTTPS請求時,帶參請求。修改后bindtest代碼具體如下:bindtest:function(){wx.request({url:userUrl+'test',data:{

'testA':'A',

'testB':'B'},success:function(res){console.log('請求結果',res)}})},在后臺代碼中,可以使用I()方法獲取到http請求中的數據,可以加上參數比如:I(‘參數名’)。簡單修改test方法,修改后的代碼如下:publicfunctiontest(){$data=[];$data['I()']=I();$data["I('testA')"]=I('testA');$this->ajaxReturn($data);}8.2后臺api開發test方法中,首先定義了一個data數組,其中data數組中I()的值為I()方法獲取到的http請求中所有的參數,而data數組中I(‘testA’)的值則為I()方法獲取到http請求中testA的值。單擊“測試”按鈕,可以看到調試器中打印出來的值。8.2后臺api開發★數據庫的增刪改查(1)在pingshifen中新建一個數據表,命名為“pingshifen_test”,該數據表主要有3個字段,其中id字段一般所有表都需要,類型選擇INT,并勾選A_I以使其自增。其他字段按需建立,因為測試用,字段名不需要有意義,類型與長度也應該按需設置,這里加了field1和field2兩個字段,類型選擇TEXT,長度/值為256。下方的“Collation”代表該數據表的字符集,如果需要支持中文存儲,需選擇utf8_****或tf8mb4_*****,這里選擇了utf8_general_ci。最后單擊“執行”按鈕,完成pingshifen_test的新建。8.2后臺api開發(2)先給數據表手動插入兩組數據8.2后臺api開發◆查(select、find)數據庫查詢語句有select和find兩種,區別在于select會返回所有滿足where條件的數據,而find只返回滿足where條件的第一條數據。其中,where()接收一個數組作為查詢參數,一個數組中可以有多個參數。在test方法中,使用select語句查詢pingshifen_test數據表中的所有數據以及id為1的數據,存放在data數組中,返回給前端。test方法具體代碼publicfunctiontest(){$data=[];

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論