中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

做網(wǎng)站文案網(wǎng)址注冊(cè)在哪里注冊(cè)

做網(wǎng)站文案,網(wǎng)址注冊(cè)在哪里注冊(cè),wordpress 開(kāi)啟維護(hù),怎么用一個(gè)主機(jī)做多個(gè)網(wǎng)站vue-router作為vue全家桶之一的重要插件,有必要去深究一下,今天我們就從0到1手寫一個(gè)簡(jiǎn)化版本。 開(kāi)始之前,我們使用路由插件時(shí)是先進(jìn)行下載路由 npm i vue-router ,然后在main.js中使用app.use導(dǎo)入router插件。想要手寫vue-rou…

vue-router作為vue全家桶之一的重要插件,有必要去深究一下,今天我們就從0到1手寫一個(gè)簡(jiǎn)化版本。

開(kāi)始之前,我們使用路由插件時(shí)是先進(jìn)行下載路由

npm i vue-router

,然后在main.js中使用app.use導(dǎo)入router插件。想要手寫vue-router,必須先搞懂app.use()干了一件什么事情。我們?nèi)ス俜轿臋n下面看看。

app.use()?

安裝一個(gè)插件。

  • 類型

    ts
    interface App {use(plugin: Plugin, ...options: any[]): this
    }
  • 詳細(xì)信息

    第一個(gè)參數(shù)應(yīng)是插件本身,可選的第二個(gè)參數(shù)是要傳遞給插件的選項(xiàng)。

    插件可以是一個(gè)帶?install()?方法的對(duì)象,亦或直接是一個(gè)將被用作?install()?方法的函數(shù)。插件選項(xiàng) (app.use()?的第二個(gè)參數(shù)) 將會(huì)傳遞給插件的?install()?方法。

    若?app.use()?對(duì)同一個(gè)插件多次調(diào)用,該插件只會(huì)被安裝一次。

兩個(gè)組件router-view 和router-link

<template><a :href="'#' + props.to"><slot></slot></a>
</template><script setup>
const props = defineProps({to: {type: String,required: true,},
});
</script><style lang="css" scoped>
</style>
<!--* @LastEditTime: 2024-08-14 10:45:56* @Description: file content
-->
<template><component :is="component"></component>
</template><script setup>
import { useRouter } from "./index.js";
import { computed } from "vue";
const router = useRouter();
const mapRouter = new Map();
const reflectMapRouter = (router) => {router.routes.forEach((route) => {// 更具路徑進(jìn)行組件查詢,保證O(1)時(shí)間mapRouter.set(route.path, route.component);});
};
//方法執(zhí)行進(jìn)行組件注冊(cè)
reflectMapRouter(router);
//設(shè)置為計(jì)算屬性響應(yīng)式更新
const component = computed(() => {const nowRoute = mapRouter.get(router.current.value);//這里注意,需要進(jìn)行校驗(yàn),因?yàn)橛脩艨赡茌斎脲e(cuò)誤網(wǎng)址return nowRoute ? nowRoute : null;
});
</script>
<style lang="css" scoped>
</style>
/** @LastEditTime: 2024-08-14 10:47:43* @Description: file content*/
import { ref } from "vue";
// 對(duì)所有頁(yè)面暴露
const ROUTER_KEY = "__router__";export const useRouter = () => {//獲取暴露的Router對(duì)象return inject(ROUTER_KEY);
}
class Router {constructor(options) {//history對(duì)象就是createHashWebHistroy返回的history對(duì)象this.history = options.history;// 路由對(duì)象數(shù)組,path,component,name等配置this.routes = options.routes;//獲取當(dāng)前路由地址this.current = ref(this.history.url);// 這里的方法是監(jiān)聽(tīng)hashchange事件來(lái)更新current,切換路由//,可以先不看這一段等會(huì)會(huì)講this.history.bindEvent(() => {this.current.value = window.location.hash.slice(1);})}//插件的install方法install(app) {// 全局聲明 有一個(gè)router 全局使用的對(duì)象app.provide(ROUTER_KEY, this);//注冊(cè)全局組件app.component('router-link', RouterLink);app.component('router-view', RouterView);}
}
export const createRouter = (options) => {return new Router(options);
}
export const createWebHashHistory = () => {function bindEvent(fn) {window.addEventListener('hashchange', fn);}// history 對(duì)象return {url: window.location.hash.slice(1) || '/',bindEvent}
}

http://www.risenshineclean.com/news/52445.html

相關(guān)文章:

  • 北京網(wǎng)站設(shè)計(jì)培訓(xùn)北京外貿(mào)網(wǎng)站優(yōu)化
  • 新源網(wǎng)站建設(shè)產(chǎn)品推廣ppt范例
  • 中文個(gè)人網(wǎng)站欣賞網(wǎng)站關(guān)鍵詞如何優(yōu)化
  • 手機(jī)網(wǎng)站建設(shè)策劃書排名優(yōu)化外包公司
  • 都有哪些可以做app的網(wǎng)站汕頭疫情最新消息
  • 網(wǎng)站流量的重要性網(wǎng)絡(luò)游戲推廣怎么做
  • 湖南奉天建設(shè)集團(tuán)網(wǎng)站免費(fèi)的十大免費(fèi)貨源網(wǎng)站
  • 網(wǎng)站優(yōu)化報(bào)表今日頭條站長(zhǎng)平臺(tái)
  • 網(wǎng)站策劃內(nèi)容百度推廣費(fèi)
  • 深圳金融投資網(wǎng)站建設(shè)bt最佳磁力搜索引擎
  • 一定得做網(wǎng)站認(rèn)證企業(yè)軟文
  • 快速做網(wǎng)站套餐廣告聯(lián)盟平臺(tái)
  • 建筑設(shè)計(jì)網(wǎng)站大全網(wǎng)站windows優(yōu)化大師是官方的嗎
  • 千牛網(wǎng)站上的店鋪推廣怎么做福州整站優(yōu)化
  • 程序員源碼網(wǎng)站個(gè)人怎么創(chuàng)建網(wǎng)站
  • 國(guó)外空間做網(wǎng)站怎么樣百度怎么免費(fèi)推廣
  • jsp網(wǎng)站建設(shè)美食焊工培訓(xùn)內(nèi)容有哪些
  • 濰坊做網(wǎng)站網(wǎng)站安全
  • 國(guó)外有哪些做服裝的網(wǎng)站有哪些快速排序優(yōu)化
  • wordpress上傳.sh腳本寧波seo排名方案優(yōu)化公司
  • 自己做的網(wǎng)站首頁(yè)變成符號(hào)了天津百度seo推廣
  • 做設(shè)計(jì)有哪些好用的素材網(wǎng)站有哪些選擇寧波seo優(yōu)化公司
  • 響應(yīng)式網(wǎng)站建設(shè)案例淘寶數(shù)據(jù)查詢
  • wordpress能做app嗎seo賺錢
  • 網(wǎng)站開(kāi)發(fā)屬于大學(xué)那個(gè)專業(yè)網(wǎng)站制作方案
  • 重慶做商城網(wǎng)站網(wǎng)絡(luò)營(yíng)銷推廣計(jì)劃書
  • 做文案策劃需要看什么網(wǎng)站地推團(tuán)隊(duì)如何收費(fèi)
  • 南京做企業(yè)網(wǎng)站博客營(yíng)銷案例
  • 用什么軟件開(kāi)發(fā)手機(jī)appseo百度關(guān)鍵詞優(yōu)化軟件
  • 有域名沒(méi)有服務(wù)器怎么做網(wǎng)站seo優(yōu)化是什么職業(yè)