下面我就為大家分享一篇解決vue-router中的query動態傳參問題,具有很好的參考價值,希望對大家有所幫助。
最近在寫項目,在寫項目的過程會總是發現這樣或那樣的問題,比如說vue-router中的query如何傳遞動態的參數,經過了一些波折才解決了問題,問題描述如下:
希望跳轉的時候url是這樣的:http://localhost:8080/editmovie?id=****
<li><router-link :to="{path:'editmovie', query: {id : 111}}" class="edit">修改</router-link></li>
但是呢?上面的只是一個靜態的,url永遠會是:http://localhost:8080/editmovie?id=111
其實我需要的id是放在一個隱藏的元素中的:
<li class="hiden">2016987</li>
剛開始我的想法就是,想呼叫元件中的methods中的方法,但是嘗試了幾次,都失敗了,之後偶然看到一個問答
vue-router動態配置傳入參數問題,然後我又看到下面的程式碼:
<li v-for=" el in hotLins" > <router-link :to="{path:‘details‘,query: {id:el.tog_line_id}}"> <img :src="el.image_list[0]"> <h3>{{el.tourism_name}} {{el.tog_line_id}}</h3> <p>{{el.address}}</p> </router-link> </li>
一下子感覺有了思路,解決方法如下:
給li的id綁定了data中的id,然後query中寫入綁定的這個就可以了
<li v-bind:id="id"><router-link :to="{path:'editmovie', query: {id : id}}" class="edit">修改</router-link></li>
export default { name : 'Movie', data() { return { id : "" } }, methods: { getId () { var id = $('.hiden').eq(0).text(); console.log(id); } }, mounted() { this.id = $('.hiden').eq(0).text(); }, components : { Heade, Foot } }
然後url就變成這樣了:http://localhost:8080/editmovie?id=2016987,問題也解決了。
上面是我整理給大家的,希望今後對大家有幫助。
相關文章:
#
以上是解決vue-router中的query動態傳參問題的詳細內容。更多資訊請關注PHP中文網其他相關文章!