1. 在小程序中创建界面:
- 创建小程序界面,包括输入查询条件的表单和显示查询结果的区域。
<!-- search.wxml -->
<view>
<form bindsubmit="searchSubmit">
<input type="text" name="startStation" placeholder="起始站点" />
<input type="text" name="endStation" placeholder="终点站点" />
<button formType="submit">查询线路</button>
</form>
<view wx:if="{{searchResult}}">
<text>查询结果:</text>
<text>{{searchResult}}</text>
</view>
</view>
// search.js
Page({
data: {
searchResult: null,
},
searchSubmit: function (e) {
const startStation = e.detail.value.startStation;
const endStation = e.detail.value.endStation;
// 调用后台服务进行线路查询
this.queryRoute(startStation, endStation);
},
queryRoute: function (startStation, endStation) {
// 向后台服务发送查询请求
wx.request({
url: 'https://your-backend-api.com/queryRoute',
method: 'POST',
data: {
startStation: startStation,
endStation: endStation,
},
success: (res) => {
if (res.data.success) {
// 更新界面显示查询结果
this.setData({
searchResult: res.data.result,
});
} else {
wx.showToast({
title: '查询失败',
icon: 'none',
duration: 2000,
});
}
},
fail: (err) => {
console.error('查询请求失败', err);
},
});
},
});
2. 后台服务处理查询请求:
- 在后台服务中实现线路查询逻辑,接收小程序发送的查询请求,查询数据库或其他数据源,并返回结果。
// 示例中的 Node.js Express 框架代码
const express = require('express');
const bodyParser = require('body-parser');
const app = express();
app.use(bodyParser.urlencoded({ extended: true }));
app.post('/queryRoute', (req, res) => {
const startStation = req.body.startStation;
const endStation = req.body.endStation;
// 在这里进行线路查询逻辑,从数据库或其他数据源中查询线路信息
// 示例中直接返回一个假的查询结果
const queryResult = `从 ${startStation} 到 ${endStation} 的线路为:A - B - C`;
// 返回查询结果给小程序
res.json({ success: true, result: queryResult });
});
app.listen(3000, () => {
console.log('Server is running on port 3000');
});
在实际应用中,后台服务的查询逻辑应根据业务需求来实现。可能涉及到与数据库的交互、调用其他接口获取线路信息等操作。请确保后台服务的安全性和稳定性,并根据实际需求进行错误处理。
转载请注明出处:http://www.pingtaimeng.com/article/detail/747/微信小程序