表題のようブラウザをリロードすると、例え自身が3ページ目、4ぺージ目とどのページに滞在していようと最初の1ページに戻ってしまう現象が起きています。
原因は何となく分かっており、リロード時にJavascript(Vuejs)を再度初期状態から読み込み、そのアクセス先が1ページ目だからであると考えています。コードを下記に記載致します。
javascript
1 2<template> 3.... 4</template> 5 6<script> 7import { get } from './api' 8import VuePagination from './Pagination.vue' 9 10export default { 11 components: { 12 VuePagination 13 }, 14 data() { 15 return { 16 Data : [], 17 URL: `/api/user/favorite/characters`, 18 counter: 0, 19 pagination: { 20 total: 0, 21 per_page: 32, 22 from: 1, 23 to: 0, 24 current_page: 1 25 }, 26 offset: 32, 27 } 28 }, 29 created: function() { 30 get(this.URL + `?page=` + this.pagination.current_page) 31 .then((res) => { 32 if(res.data) { 33 this.Data = res.data.data; 34 this.pagination = res.data; 35 } 36 }) 37 .catch((err) => { 38 alert(err.status); 39 })
疑問点がいくつかあります。
まず一つ目は、Laravelにデフォルトで備わっているbladeを使ってHTMLを作り出した場合、この現象が発生しない点です。私はこの経験があったので、bladeを使わずVuejsでPaginationを行う際も、「Laravelから何らかのparameter(例えばpre_looked_page_urlのような)が送られてくるはず」と考えていました。しかしそのような値は見つけることができませんでした。
二点目はずばり、これを解決する方法です。
いいアイデアや、実装は簡単だけれども危険な方法などいくつかアプローチの方法をご提示いただければと思います。
個人的な事で大変恐縮なのですが、前任者が逃亡し手探りでプロジェクトを進めている状態であり、皆様のお力をお借りできれば幸いです。
よろしくお願い致します。
回答2件
あなたの回答
tips
プレビュー