航空公司项目打卡——近期总结2
功能都实现得差不多了,大多数都是一边写一边测试,但是内容比较多比较杂,说实话自己也不清楚到底哪里没有测试过。
需要在后续连接后端之后进行测试,一边测试一边debug。
成功地在nginx上部署了我们的前端页面,实现了在主页面进行快捷航班查询、机票预订的功能。完善了之前遗漏的部分js函数。
碰到的问题:
1.nginx部署之后,修改文件后刷新页面不生效。
解决方法,nginx的conf文件里修改sendfile值为off,然后重新加载nginx配置文件,ctrl+F5刷新浏览器。
2.在主页面快捷查询的时候,需要提供参数之后点击查询,带着参数跳转页面并执行函数。
一开始不知道怎么做,后来理了一下思路。
给主页面的查询按钮绑定一个openXX()即打开查询/预订函数的函数。在函数里获取这些内容,然后用window.open带参数跳转
window.open('./book.html?flag='+1+'&origin='+origin+'&destination='+destination+'&startTime='+startTime);
在对应的页面写一个函数解析这些内容,定义全局变量来存储这些变量。
var paValue = new Array();//创建一个用于保存具体值得数组 $(function() { var loc = location.href;//获取整个跳转地址内容,其实就是你传过来的整个地址字符串 // alert("我的地址:"+loc); var n1 = loc.length;//地址的总长 var n2 = loc.indexOf("?");//取得=号的位置 var parameter = decodeURI(loc.substr(n2+1, n1-n2));//截取从?号后面的内容,也就是参数列表,因为传过来的路径是加了码的,所以要解码 var parameters = parameter.split("&");//从&处拆分,返回字符串数组 // alert("参数列表:"+parameters); for (var i = 0; i < parameters.length; i++) { var m1 = parameters[i].length;//获得每个键值对的长度 var m2 = parameters[i].indexOf("=");//获得每个键值对=号的位置 var value = parameters[i].substr(m2+1, m1-m2);//获取每个键值对=号后面具体的值 paValue[i] = value; // alert("参数值"+i+":"+value); } // alert("具体参数数组"); if(paValue[0]==1) queryByPlace(paValue[0]); });
这样就可以用了。
但是这样还有两个问题,
(1)我把前端部署到nginx上之后,主页面点击查询之后打开对应页面查询可以正常实现,但是主页面会报405。。
(2)这样会在导航栏暴露参数,我怀疑这两个问题都是与window.open函数有问题,正在其他的跳转方法来解决。
后续任务:debug,完善页面,查漏补缺,
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异