他のページに移動するときに ScrollPosition が先頭に設定されない
<p>Web ページはマスター/スレーブ アプローチを使用して設計されています。マスターにはタブ (左ペイン) があり、クリックするとスレーブ (右ペイン) の対応するページが表示されます。例えば。 master には「スキーマとテンプレート」という 2 つのタブが 3 つあり、デフォルトでスキーマが表示されます。ユーザーは、左側のペイン (マスター ページによってロードされる) のタブを使用して、これら 2 つのページ (スレーブ ページによってロードされる) 間を移動できます。 </p>
<p>ユーザーがスキーマ ページ内の任意の位置までスクロールしてテンプレート ページに移動すると、スクロール位置は先頭に設定されません。ただし、スクロール動作はルーターファイルで設定されます。 </p>
<pre class="brush:php;toolbar:false;">const createRouter = () =>
new VueRouter({
スクロール動作: () => ({ x: 0, y: 0 })、
ルート:[
//すべてのルートを持っています
】
});</pre>
<p>scrollBehavior の近くにブレークポイントを設定して観察すると、ナビゲーションがあるたびに行がヒットしますが、アーキテクチャからテンプレート ページに移動するときにスクロール位置が先頭に設定されません。 </p>
<p>ただし、テンプレート ページ内の特定の場所までスクロールしてアーキテクチャ ページに移動すると、そのページが先頭に設定されます。 </p>
<p>templates.ts の Mounted() 内に window.scrollTo(0, 0); 関数を書いてみました。クリックしてもトップには表示されません。 </p>
<p>なぜこれが起こっているのか説明できる人はいますか? stackoverflow にリストされているほぼすべての可能な解決策を試しました。 </p>