私はNode/Expressを初めて使用していますが、ルーティングとその他のサーバーサイドのタスク用にノードバックエンドを使用するアプリケーションにjQuery/Bootstrapアプリケーションを変換しています。現在、ユーザーがリンクをクリックすると、URLにデータが渡され、新しいページに移動したときに取得します。このように:クライアントデータをURLエクスプレスルートに渡す
$("#parking_icon").on("click", function() {
window.location = "_views/parkingLot.html?37.415912?-121.897520";
});
次に、私のparkingLot.html
ページでそのデータを取得して使用します。このように:
var urlQuery = window.location.search.substring(1);
var mapLatLon = urlQuery.split("?");
var centerCoords = [parseFloat(mapLatLon[1]), parseFloat(mapLatLon[0])];
私は急行ルートを使用して変換しようとしていますが、これを達成する方法が正確にはわかりません。 (私は上のものに似た約20のボタンを持っていますが、すべてが異なる座標を渡します)。私はこれと同じように、それぞれ別々のルートを作成することでこれを達成できることを知っています。
app.get('/parkingLot?37.415912?-121.897520', function(req, res) {
res.render('parkingLot', {
title: 'testing ParkingLotPage'
});
});
しかし、簡単な方法が必要なようです。 app.get()
を使用しないでください。私はノード/エクスプレスで作業していることが初めてであるので、これはノーブの質問であると確信していますので、私を許してください。私はそれが何か違いがあれば、ejsテンプレートエンジンを使用しています。
うわーで区切られたすべてのキーと値のペアで始まる
key=value
構文を使用してクエリ文字列を構築していることを確認し、迅速な対応をありがとうございました。私はそれが簡単だろうとは思っていませんでした。私はこれを初めて知ったと言いました。クエリ文字列については、なぜそれが正しいのか( '?37.415912?-121.897520')好奇心が強いのですか?それは実際には重要なのでしょうか? –@AustinTruexはいそれは重要です。そうでなければ、クエリ文字列パーサは渡されたクエリ文字列を解析できません。 – peteb