? ? ? ? ?🌷🌷之前幾篇博文我們一起開發了天氣查詢、單詞速記和待辦事項小程序,這次我們來對生活中常用的功能 —— 快遞查詢來探索相關的小程序。網購已經成為大家生活的一部分,有了自己的快遞查詢小程序,不用切換多個應用,就能隨時掌握自己的包裹動態。下面就跟著詳細步驟,看看這款小程序開發的全部步驟。
一、開發準備工作?🌷🌷
01. 檢查微信開發者工具?
? ? ? ? ? ? ? ? ?前期的幾步操作都是通用的。繼續寫入博文只是更全面的了解微信小程序開發的全過程. 首先確保你的電腦已經安裝了微信開發者工具。如果還沒安裝,訪問微信公眾平臺(https://mp.weixin.qq.com/),在頁面底部找到 “下載” 按鈕,根據電腦系統(Windows 或 Mac)下載對應的安裝包并完成安裝。已經安裝的用戶,打開開發者工具,檢查是否有更新提示,及時更新到最新版本,以獲得更好的開發體驗和新功能支持。?
2. 處理小程序賬號?
? ? ? ? ? ?若你有將小程序發布上線,供他人使用的計劃,那就需要在微信公眾平臺注冊一個正式的小程序賬號,注冊完成后獲取 AppID。如果只是用于學習和練習,在微信開發者工具創建項目時,選擇 “體驗模式”,跳過 AppID 填寫也能正常開發。?
二、創建快遞查詢小程序項目?🌷🌷
? ? ? ? ? ? ?打開微信開發者工具,點擊 “新建項目”。在彈出的窗口中,填寫項目名稱,比如 “便捷快遞追蹤助手”,選擇好項目在電腦中存放的目錄。如果有 AppID,就準確填入;沒有的話,勾選 “不使用云服務”,選擇 “體驗模式”,點擊 “新建”,這樣一個空白的小程序項目框架就搭建好了。?
? ? ? ? ? ? 這個項目創建成功后,我們先熟悉一下項目的目錄結構。pages文件夾用來存放小程序各個頁面的代碼;app.js是小程序的邏輯入口文件,掌控著小程序的整體運行邏輯;app.json用于配置小程序的頁面路徑、窗口樣式等重要信息;app.wxss負責設置小程序的全局樣式,后續開發過程中,我們會頻繁和這些文件打交道。?
三、構建快遞查詢小程序頁面?🌷🌷
? ? ? ? ? ? 我們要開發的快遞查詢小程序,主要包含一個頁面,用戶在這個頁面輸入快遞單號,選擇快遞公司,點擊查詢按鈕,就能獲取快遞的物流信息。這里我們使用模擬數據來展示查詢結果,實際開發中可以接入快遞查詢 API 獲取真實數據。?
1-------創建頁面文件?
? ? ? ? ? ? 在pages文件夾上右鍵單擊,選擇 “新建 Page”,命名為expressTracking,系統會自動生成expressTracking.js、expressTracking.json、expressTracking.wxml、expressTracking.wxss四個文件,分別對應頁面的邏輯處理、配置信息、結構布局和樣式設計。?
2-------------編寫小程序頁面結構
<view class="container"><view class="input-group"><text class="label">快遞單號:</text><input placeholder="請輸入快遞單號" bindinput="inputExpressNumber"></input></view><view class="input-group"><text class="label">快遞公司:</text><picker mode="selector" bindchange="selectCompany"><view class="picker-view">{{selectedCompany}}</view><view class="picker-modal"><view wx:for="{{companyList}}" wx:key="index">{{item}}</view></view></picker></view><button bindtap="queryExpress">查詢快遞</button><view wx:if="{{expressInfo}}"><text class="title">快遞信息</text><text>快遞公司:{{expressInfo.company}}</text><text>快遞單號:{{expressInfo.number}}</text><view wx:for="{{expressInfo.traces}}" wx:key="index"><text>{{item.time}} - {{item.status}}</text></view></view>
</view>
?
? ? ? ? ? ? ? ?這段代碼定義了頁面的基本結構。兩個input-group分別用于輸入快遞單號和選擇快遞公司;picker組件實現了快遞公司的下拉選擇功能;queryExpress綁定按鈕點擊事件,用于觸發快遞查詢操作;wx:if根據是否獲取到快遞信息,決定是否展示快遞詳情。?
3. 編寫小程序的頁面樣式
.container {padding: 20px;
}.input-group {margin-bottom: 20px;display: flex;align-items: center;
}.label {width: 80px;font-weight: bold;
}input {flex: 1;height: 40px;padding-left: 10px;border: 1px solid #ccc;border-radius: 5px;
}.picker-view {height: 40px;line-height: 40px;border: 1px solid #ccc;border-radius: 5px;padding-left: 10px;
}.picker-modal {display: none;
}button {width: 100%;height: 40px;background-color: #007AFF;color: white;border: none;border-radius: 5px;
}.title {font-size: 18px;font-weight: bold;margin-top: 20px;margin-bottom: 10px;
}
? ? ? ? ? ? ? 這里設置了頁面容器、輸入框、選擇器和按鈕等元素的樣式,讓頁面布局合理、美觀。?
4. 編寫小程序頁面邏輯
Page({data: {inputExpressNumber: '',selectedCompany: '請選擇快遞公司',companyList: ['中通快遞', '圓通速遞', '申通快遞', '韻達快遞', '順豐速運'],expressInfo: null},inputExpressNumber: function (e) {this.setData({inputExpressNumber: e.detail.value});},selectCompany: function (e) {let index = e.detail.value;let companyList = this.data.companyList;this.setData({selectedCompany: companyList[index]});},queryExpress: function () {// 這里用模擬數據代替真實的快遞查詢結果let mockExpressInfo = {company: this.data.selectedCompany,number: this.data.inputExpressNumber,traces: [{ time: '2024-01-01 10:00:00', status: '已攬收' },{ time: '2024-01-02 08:00:00', status: '運輸中' },{ time: '2024-01-03 15:00:00', status: '已送達' }]};this.setData({expressInfo: mockExpressInfo});}
});
? ? ? ? ? ? ? ? 在data中定義了頁面初始數據,包括輸入的快遞單號、選中的快遞公司、快遞公司列表和快遞信息。inputExpressNumber方法獲取用戶輸入的快遞單號;selectCompany方法處理快遞公司選擇事件;queryExpress方法模擬快遞查詢,設置展示的快遞信息。這樣操作基本就完成了?
四、運行與調試小程序?🌷🌷
? ? ? ? ? ? ? ? ? ?完成以上的代碼編寫后,點擊開發者工具上方的 “編譯” 按鈕,或者使用快捷鍵Ctrl + S(Windows)/Command + S(Mac)保存代碼,就能在模擬器中看到我們的快遞查詢小程序了。在輸入框輸入快遞單號,選擇快遞公司,點擊 “查詢快遞” 按鈕,就能看到模擬的快遞物流信息。?
? ? ? ? ? ? ? ? ? ? 如果小程序運行出現問題,不要慌!利用開發者工具右側的調試面板查看報錯信息。在expressTracking.js的各個方法中添加console.log()語句,比如在queryExpress方法中添加console.log(this.data.inputExpressNumber),可以打印出用戶輸入的快遞單號,方便我們定位和解決問題。?
? ? ? ? ? ? ? ? ? ? 到這里,一個簡單的快遞查詢小程序就開發完成了。后續你可以進一步優化它,比如接入真實的快遞查詢 API,獲取準確的物流信息;添加快遞收藏功能,方便快速查看常用快遞;或者設計更美觀的界面。微信小程序開發的世界還有很多驚喜等待你去發現,快動手試試吧!從中體驗編程的快樂。