দস্তাবেজের উদাহরণ এখানে:
// with query, resulting in /register?plan=private
router.push({ path: 'register', query: { plan: 'private' }})
রেফ: https://router.vuejs.org/en/essentials/navication.html
এই ডক্সে উল্লিখিত হিসাবে, router.replace
কাজ করেrouter.push
সুতরাং, মনে হচ্ছে আপনার প্রশ্নে আপনার নমুনা কোডটিতে এটি ঠিক আছে। তবে আমি মনে করি আপনার উভয়টি name
বা path
প্যারামিটারও অন্তর্ভুক্ত করার দরকার হতে পারে , যাতে রাউটারটিতে নেভিগেট করার কিছু পথ থাকে। name
বা একটি ছাড়া path
এটি খুব সার্থক মনে হয় না।
এটি এখন আমার বর্তমান বোঝাপড়া:
query
রাউটারের জন্য optionচ্ছিক - ভিউটি তৈরির জন্য উপাদানটির জন্য কিছু অতিরিক্ত তথ্য
name
বা path
বাধ্যতামূলক - এটি আপনার মধ্যে কোন উপাদান প্রদর্শন করবে তা স্থির করে <router-view>
।
এটি আপনার নমুনা কোডের অনুপস্থিত জিনিস হতে পারে।
সম্পাদনা: মন্তব্যের পরে অতিরিক্ত বিশদ
আপনি কি এই ক্ষেত্রে নামযুক্ত রুটগুলি ব্যবহার করার চেষ্টা করেছেন ? আপনার গতিশীল রুট রয়েছে, এবং পৃথকভাবে প্যারাম সরবরাহ এবং ক্যোয়ারী সরবরাহ করা সহজ:
routes: [
{ name: 'user-view', path: '/user/:id', component: UserView },
// other routes
]
এবং তারপরে আপনার পদ্ধতিতে:
this.$router.replace({ name: "user-view", params: {id:"123"}, query: {q1: "q1"} })
প্রযুক্তিগতভাবে উপরোক্ত এবং এর মধ্যে কোনও পার্থক্য নেই this.$router.replace({path: "/user/123", query:{q1: "q1"}})
তবে রুটের স্ট্রিং রচনা করার চেয়ে নামযুক্ত রুটে গতিশীল প্যারাম সরবরাহ করা সহজ। তবে উভয় ক্ষেত্রেই ক্যোয়ারী প্যারামগুলি বিবেচনায় নেওয়া উচিত। উভয় ক্ষেত্রেই, ক্যোয়ারী প্যারামগুলি যেভাবে পরিচালিত হয় তাতে আমি কোনও ভুল খুঁজে পাইনি।
আপনি রুটের অভ্যন্তরে আসার পরে, আপনি আপনার গতিশীল প্যারামগুলি this.$route.params.id
এবং আপনার ক্যোয়ারী প্যারামগুলি আনতে পারেন this.$route.query.q1
।