国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

vite+vue3路由切換滾動條位置重置el-scrollbar

這篇具有很好參考價值的文章主要介紹了vite+vue3路由切換滾動條位置重置el-scrollbar。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

vite+vue3路由切換滾動條位置重置

當(dāng)切換到新路由時,想要頁面滾到頂部,或者是保持原先的滾動位置,就像重新加載頁面那樣,vue-router 可以自定義路由切換時頁面如何滾動
vite+vue3路由切換滾動條位置重置el-scrollbar,前端,# vue,vue.js,前端,javascript

使用原生滾動條

VueRouter官方文檔:https://router.vuejs.org/zh/guide/advanced/scroll-behavior.html

Router 實例提供一個 scrollBehavior 方法,接收 tofrom 路由對象

import { createRouter, createWebHashHistory, createWebHistory, RouteRecordRaw } from 'vue-router'

const routes: Array<RouteRecordRaw> = [
  {
    path: '/',
    name: '...',
    component: () => import('@/views/xxx.vue')
  },
]

const router = createRouter({
  history: createWebHashHistory(),
  routes,
  scrollBehavior(to, from, savedPosition) {
    // 始終滾動到頂部
    return { top: 0 }
  }
})

export default router
vite+vue3路由切換滾動條位置重置el-scrollbar,前端,# vue,vue.js,前端,javascript

使用el-scrollbar

el-scrollbar使用手冊:https://element-plus.org/zh-CN/component/scrollbar.html

路由切換時因為 el-scrollbar 組件包裹著router-view ,所以頁面切換時滾動條不會置頂,所以需要重置滾動條

<el-scrollbar>
  <RouterView></RouterView>
</el-scrollbar>
  • el-scrollbar方法
函數(shù) 解釋
handleScroll 觸發(fā)滾動事件
scrollTo 滾動到一組特定坐標(biāo)
setScrollTop 設(shè)置滾動條到頂部的距離
setScrollLeft 設(shè)置滾動條到左邊的距離
update 手動更新滾動條狀態(tài)
wrapRef 滾動條包裹的 ref 對象
<template>
  <el-scrollbar ref="scrollContainer">
    <router-view />
  </el-scrollbar>
</template>

<script setup lang="ts">
import { useRouter } from "vue-router";
const scrollContainer = ref(null);

const router = useRouter();

const handleRouteChange = () => {
  if (scrollContainer.value && scrollContainer.value.scrollTo) {
    scrollContainer.value.scrollTo(0, 0); // 滾動到頂部
  }
};

// 解決:切換頁面,滾動條位置不動
onMounted(() => {
  router.afterEach(handleRouteChange);
});

onBeforeUnmount(() => {});

也可以使用EventBus,每次切換路由時觸發(fā)handleRouteChange函數(shù)來調(diào)整el-scrollbar的位置文章來源地址http://www.zghlxwxcb.cn/news/detail-733727.html

vite+vue3路由切換滾動條位置重置el-scrollbar,前端,# vue,vue.js,前端,javascript

useRoute和useRouter

  • useRoute相當(dāng)于this.$route,返回當(dāng)前的路由地址
  • useRouter相當(dāng)于this.$router,返回路由器實例
import { useRoute } from "vue-router";

const route = useRoute();

console.log(route)
vite+vue3路由切換滾動條位置重置el-scrollbar,前端,# vue,vue.js,前端,javascript
import { useRouter } from "vue-router";

const router = useRouter();

console.log(router)
vite+vue3路由切換滾動條位置重置el-scrollbar,前端,# vue,vue.js,前端,javascript

到了這里,關(guān)于vite+vue3路由切換滾動條位置重置el-scrollbar的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點(diǎn)擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Vue3動態(tài)路由(Vite+Vue3+TS+Mock)

    Vue3動態(tài)路由(Vite+Vue3+TS+Mock)

    Vue通過路由進(jìn)行頁面管理,不同的路由綁定到不同的頁面。一般來說,前端直接寫好的路由為靜態(tài)路由,在不修改代碼的情況下,路由表是不會改變的。對于不需要動態(tài)改變路由表的網(wǎng)站,靜態(tài)路由就已經(jīng)足夠了,但是當(dāng)頁面需要與權(quán)限進(jìn)行綁定時,不同用戶允許瀏覽的頁面

    2024年02月02日
    瀏覽(25)
  • 【Vite】Vite切換版本(Vite+vue3)報錯 [vite] Internal server error: Cannot set property ‘id‘ of undefined

    【Vite】Vite切換版本(Vite+vue3)報錯 [vite] Internal server error: Cannot set property ‘id‘ of undefined

    Vue3+vite的項目,在全局安裝新的Vite版本后,一直報下圖錯誤。 報錯信息 通過很多方式?jīng)]有解決,最后發(fā)現(xiàn)是Vite版本的問題,因為Vue是從腳手架中引入的 查看package.json和package.lock.json區(qū)別 修改 將 package.json 中vite的版本號固定后,安裝( npm install )發(fā)現(xiàn)仍有問題 最終解決 查

    2024年02月16日
    瀏覽(24)
  • Vue3+vite路由配置優(yōu)化(自動化導(dǎo)入)

    Vue3+vite路由配置優(yōu)化(自動化導(dǎo)入)

    今天在維護(hù)優(yōu)化公司中臺項目時,發(fā)現(xiàn)路由的文件配置非常多非常亂,只要只中大型項目,都會進(jìn)入很多的路由頁面,規(guī)范一點(diǎn)的公司還會吧路由進(jìn)行模塊化導(dǎo)入,但是依然存在很多文件夾的和手動導(dǎo)入的問題。 于是我想到了我之前使用vuex時進(jìn)行的模塊化自動導(dǎo)入js文件,能

    2024年02月08日
    瀏覽(24)
  • vue3+vite路由中使用element自動導(dǎo)入圖標(biāo)

    vue3+vite路由中使用element自動導(dǎo)入圖標(biāo)

    el-icon v-if=\\\"childItem.meta childItem.meta.icon\\\" ??????? ?component :is=\\\"childItem.meta.icon\\\" / /el-icon import { createRouter, createWebHashHistory } from \\\'vue-router\\\' import Layout from \\\'../layout/index.vue\\\' import { markRaw } from \\\'vue\\\' export const asyncRoutes = [ ? { ? ? path: \\\'/\\\', ? ? name: \\\'HomePage\\\', ? ? component: Layout, ? ? redir

    2024年02月15日
    瀏覽(25)
  • vue3切換路由模式——Hash 、histoary

    1、history模式 使用createWebHistory 2、hash模式 使用createWebHashHistory 綜上所述: history 對應(yīng) createWebHistory hash 對應(yīng) createWebHashHistory

    2024年02月02日
    瀏覽(19)
  • Vite4+Typescript+Vue3+Pinia 從零搭建(5) - 路由router

    Vite4+Typescript+Vue3+Pinia 從零搭建(5) - 路由router

    項目代碼同步至碼云 weiz-vue3-template Vue Router 是 Vue.js 的官方路由。它與 Vue.js 核心深度集成,讓用 Vue.js 構(gòu)建單頁應(yīng)用變得輕而易舉。 在 src/view 下新建 home.vue 和 login.vue ,內(nèi)容如下: login.vue 里修改下對應(yīng)name即可 index.ts 作為路由入口, static.ts 作為靜態(tài)路由, modules 內(nèi)還可以

    2024年02月05日
    瀏覽(100)
  • vue3如何切換hash/history兩種路由模式

    本文介紹了在vue3中,如何使用history和hash兩種路由模式的方法 1、history模式 使用createWebHistory 2、hash模式 使用createWebHashHistory 綜上所述: history 對應(yīng) createWebHistory hash 對應(yīng) createWebHashHistory

    2024年02月13日
    瀏覽(28)
  • vue3之vite創(chuàng)建h5項目之2 (sass公共樣式、聲明組件、路由配置和layout組件 )

    vue3之vite創(chuàng)建h5項目之2 (sass公共樣式、聲明組件、路由配置和layout組件 )

    pnpm i -D sass 1-1-1 main.ts 引入公共樣式方式 1-3-1 src / style / index.scss ( 適配iphonex等還有引入其他公共的樣式 ) 1-3-2 src / style / mixin.scss ( 公共樣式方法抽離 ) 1-3-3 src / style / reset.scss ( 重置樣式 ) 1-3-4 src / style / variables.scss ( 定義的公共變量樣式 ) 1-3-5 使用變量 3-1 路徑文件

    2024年02月05日
    瀏覽(52)
  • 基于vscode實現(xiàn)vue3項目創(chuàng)建啟動+安裝配置路由vue-router實現(xiàn)單頁面組件切換

    基于vscode實現(xiàn)vue3項目創(chuàng)建啟動+安裝配置路由vue-router實現(xiàn)單頁面組件切換

    訪問https://nodejs.org/en,點(diǎn)擊下載最新版本的nodejs,并安裝。 在項目目錄文件下,通過cmd運(yùn)行下述指令。 依次輸入下列命令,啟動vue項目 在瀏覽器中加載http://localhost:5173/,頁面加載成功,說明vue項目安裝啟動成功。 建議安裝第三方庫通過vscode中的終端來操作,項目啟動通過

    2024年02月03日
    瀏覽(97)
  • 【尚醫(yī)通】vue3+ts前端項目開發(fā)筆記 2 —— 創(chuàng)建項目、封裝網(wǎng)絡(luò)請求、集成elment-plus 、重置樣式、準(zhǔn)備狀態(tài)管理/路由 等開發(fā)前準(zhǔn)備

    【尚醫(yī)通】vue3+ts前端項目開發(fā)筆記 2 —— 創(chuàng)建項目、封裝網(wǎng)絡(luò)請求、集成elment-plus 、重置樣式、準(zhǔn)備狀態(tài)管理/路由 等開發(fā)前準(zhǔn)備

    服務(wù)器地址:http://syt.atguigu.cn 醫(yī)院接口:http://139.198.34.216:8201/swagger-ui.html 公共數(shù)據(jù)接口:http://139.198.34.216:8202/swagger-ui.html 會員接口:http://139.198.34.216:8203/swagger-ui.html 短信驗證碼接口:http://139.198.34.216:8204/swagger-ui.html 訂單接口:http://139.198.34.216:8206/swagger-ui.html 文件上傳接口:

    2024年02月13日
    瀏覽(19)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包