提交 3e6d75aa 编写于 作者: 码梦天涯's avatar 码梦天涯

修改injectionKey命名

上级 479cd545
......@@ -24,6 +24,7 @@ ergodic.dirSync(pagesPath, function(file_name, full_path, dir) {
const routePath = path.relative(routerPath, dir).replace(pathPrefix, "");
const componentPath = path.relative(routerPath, full_path);
const routeName = routePath;
routesArr.push(` {
path: "${getRoutePath(routePath)}",
......
......@@ -306,6 +306,7 @@
"version": "3.0.0-rc.5",
"resolved": "https://registry.npm.taobao.org/@vue/compiler-core/download/@vue/compiler-core-3.0.0-rc.5.tgz?cache=0&sync_timestamp=1595985478767&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40vue%2Fcompiler-core%2Fdownload%2F%40vue%2Fcompiler-core-3.0.0-rc.5.tgz",
"integrity": "sha1-3U8YFvyuNKgbxg5YT5eZPK0oTVQ=",
"dev": true,
"requires": {
"@babel/parser": "^7.10.4",
"@babel/types": "^7.10.4",
......@@ -318,23 +319,24 @@
"version": "3.0.0-rc.5",
"resolved": "https://registry.npm.taobao.org/@vue/compiler-dom/download/@vue/compiler-dom-3.0.0-rc.5.tgz?cache=0&sync_timestamp=1595985476782&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40vue%2Fcompiler-dom%2Fdownload%2F%40vue%2Fcompiler-dom-3.0.0-rc.5.tgz",
"integrity": "sha1-g5BehgESOjZUuQ+9gHCKFlMM4ho=",
"dev": true,
"requires": {
"@vue/compiler-core": "3.0.0-rc.5",
"@vue/shared": "3.0.0-rc.5"
}
},
"@vue/compiler-sfc": {
"version": "3.0.0-rc.5",
"resolved": "https://registry.npm.taobao.org/@vue/compiler-sfc/download/@vue/compiler-sfc-3.0.0-rc.5.tgz?cache=0&sync_timestamp=1595985481162&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40vue%2Fcompiler-sfc%2Fdownload%2F%40vue%2Fcompiler-sfc-3.0.0-rc.5.tgz",
"integrity": "sha1-N05Spvv4+5ruEhMCYFCg8cSW/s8=",
"version": "3.0.0-rc.6",
"resolved": "https://registry.npm.taobao.org/@vue/compiler-sfc/download/@vue/compiler-sfc-3.0.0-rc.6.tgz",
"integrity": "sha1-IuzMGZNqvrhgU1s74fAIaUVlB7Q=",
"dev": true,
"requires": {
"@babel/parser": "^7.10.4",
"@babel/types": "^7.10.4",
"@vue/compiler-core": "3.0.0-rc.5",
"@vue/compiler-dom": "3.0.0-rc.5",
"@vue/compiler-ssr": "3.0.0-rc.5",
"@vue/shared": "3.0.0-rc.5",
"@vue/compiler-core": "3.0.0-rc.6",
"@vue/compiler-dom": "3.0.0-rc.6",
"@vue/compiler-ssr": "3.0.0-rc.6",
"@vue/shared": "3.0.0-rc.6",
"consolidate": "^0.15.1",
"estree-walker": "^2.0.1",
"hash-sum": "^2.0.0",
......@@ -345,49 +347,133 @@
"postcss-modules": "^3.1.0",
"postcss-selector-parser": "^6.0.2",
"source-map": "^0.6.1"
},
"dependencies": {
"@vue/compiler-core": {
"version": "3.0.0-rc.6",
"resolved": "https://registry.npm.taobao.org/@vue/compiler-core/download/@vue/compiler-core-3.0.0-rc.6.tgz",
"integrity": "sha1-1brmugKAaKpUcGpcnB6ONKKWtM4=",
"dev": true,
"requires": {
"@babel/parser": "^7.10.4",
"@babel/types": "^7.10.4",
"@vue/shared": "3.0.0-rc.6",
"estree-walker": "^2.0.1",
"source-map": "^0.6.1"
}
},
"@vue/compiler-dom": {
"version": "3.0.0-rc.6",
"resolved": "https://registry.npm.taobao.org/@vue/compiler-dom/download/@vue/compiler-dom-3.0.0-rc.6.tgz",
"integrity": "sha1-bXrexweDSrdbKridU/SE507sclM=",
"dev": true,
"requires": {
"@vue/compiler-core": "3.0.0-rc.6",
"@vue/shared": "3.0.0-rc.6"
}
},
"@vue/shared": {
"version": "3.0.0-rc.6",
"resolved": "https://registry.npm.taobao.org/@vue/shared/download/@vue/shared-3.0.0-rc.6.tgz",
"integrity": "sha1-NvcLdt8eWK/BJi1EoicnbqEVblk=",
"dev": true
}
}
},
"@vue/compiler-ssr": {
"version": "3.0.0-rc.5",
"resolved": "https://registry.npm.taobao.org/@vue/compiler-ssr/download/@vue/compiler-ssr-3.0.0-rc.5.tgz?cache=0&sync_timestamp=1595985482307&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40vue%2Fcompiler-ssr%2Fdownload%2F%40vue%2Fcompiler-ssr-3.0.0-rc.5.tgz",
"integrity": "sha1-h4QGxZ2v82Ls3LGZ+5Rnp2nKjeU=",
"version": "3.0.0-rc.6",
"resolved": "https://registry.npm.taobao.org/@vue/compiler-ssr/download/@vue/compiler-ssr-3.0.0-rc.6.tgz",
"integrity": "sha1-iGNWduInzQiiyqMRChaCRyfUuqs=",
"dev": true,
"requires": {
"@vue/compiler-dom": "3.0.0-rc.5",
"@vue/shared": "3.0.0-rc.5"
"@vue/compiler-dom": "3.0.0-rc.6",
"@vue/shared": "3.0.0-rc.6"
},
"dependencies": {
"@vue/compiler-core": {
"version": "3.0.0-rc.6",
"resolved": "https://registry.npm.taobao.org/@vue/compiler-core/download/@vue/compiler-core-3.0.0-rc.6.tgz",
"integrity": "sha1-1brmugKAaKpUcGpcnB6ONKKWtM4=",
"dev": true,
"requires": {
"@babel/parser": "^7.10.4",
"@babel/types": "^7.10.4",
"@vue/shared": "3.0.0-rc.6",
"estree-walker": "^2.0.1",
"source-map": "^0.6.1"
}
},
"@vue/compiler-dom": {
"version": "3.0.0-rc.6",
"resolved": "https://registry.npm.taobao.org/@vue/compiler-dom/download/@vue/compiler-dom-3.0.0-rc.6.tgz",
"integrity": "sha1-bXrexweDSrdbKridU/SE507sclM=",
"dev": true,
"requires": {
"@vue/compiler-core": "3.0.0-rc.6",
"@vue/shared": "3.0.0-rc.6"
}
},
"@vue/shared": {
"version": "3.0.0-rc.6",
"resolved": "https://registry.npm.taobao.org/@vue/shared/download/@vue/shared-3.0.0-rc.6.tgz",
"integrity": "sha1-NvcLdt8eWK/BJi1EoicnbqEVblk=",
"dev": true
}
}
},
"@vue/reactivity": {
"version": "3.0.0-rc.5",
"resolved": "https://registry.npm.taobao.org/@vue/reactivity/download/@vue/reactivity-3.0.0-rc.5.tgz?cache=0&sync_timestamp=1595985480508&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40vue%2Freactivity%2Fdownload%2F%40vue%2Freactivity-3.0.0-rc.5.tgz",
"integrity": "sha1-Rc/42DnXrRMLHkmSOQkAUP3s/xM=",
"version": "3.0.0-rc.6",
"resolved": "https://registry.npm.taobao.org/@vue/reactivity/download/@vue/reactivity-3.0.0-rc.6.tgz",
"integrity": "sha1-K8p92LC0IZzObW4x+sXzDXisSEU=",
"requires": {
"@vue/shared": "3.0.0-rc.5"
"@vue/shared": "3.0.0-rc.6"
},
"dependencies": {
"@vue/shared": {
"version": "3.0.0-rc.6",
"resolved": "https://registry.npm.taobao.org/@vue/shared/download/@vue/shared-3.0.0-rc.6.tgz",
"integrity": "sha1-NvcLdt8eWK/BJi1EoicnbqEVblk="
}
}
},
"@vue/runtime-core": {
"version": "3.0.0-rc.5",
"resolved": "https://registry.npm.taobao.org/@vue/runtime-core/download/@vue/runtime-core-3.0.0-rc.5.tgz?cache=0&sync_timestamp=1595985479852&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40vue%2Fruntime-core%2Fdownload%2F%40vue%2Fruntime-core-3.0.0-rc.5.tgz",
"integrity": "sha1-3VmvOl/AidHNwFplcyDA3Bflw2I=",
"version": "3.0.0-rc.6",
"resolved": "https://registry.npm.taobao.org/@vue/runtime-core/download/@vue/runtime-core-3.0.0-rc.6.tgz",
"integrity": "sha1-zKiDtsyUHbMEyEynn0NFjdizpbw=",
"requires": {
"@vue/reactivity": "3.0.0-rc.5",
"@vue/shared": "3.0.0-rc.5"
"@vue/reactivity": "3.0.0-rc.6",
"@vue/shared": "3.0.0-rc.6"
},
"dependencies": {
"@vue/shared": {
"version": "3.0.0-rc.6",
"resolved": "https://registry.npm.taobao.org/@vue/shared/download/@vue/shared-3.0.0-rc.6.tgz",
"integrity": "sha1-NvcLdt8eWK/BJi1EoicnbqEVblk="
}
}
},
"@vue/runtime-dom": {
"version": "3.0.0-rc.5",
"resolved": "https://registry.npm.taobao.org/@vue/runtime-dom/download/@vue/runtime-dom-3.0.0-rc.5.tgz?cache=0&sync_timestamp=1595985478104&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40vue%2Fruntime-dom%2Fdownload%2F%40vue%2Fruntime-dom-3.0.0-rc.5.tgz",
"integrity": "sha1-L9daHymyOr8P/lzN7avaEXIcW1s=",
"version": "3.0.0-rc.6",
"resolved": "https://registry.npm.taobao.org/@vue/runtime-dom/download/@vue/runtime-dom-3.0.0-rc.6.tgz",
"integrity": "sha1-HdGPGpL354OGQXQcWqHSTOUIxaM=",
"requires": {
"@vue/runtime-core": "3.0.0-rc.5",
"@vue/shared": "3.0.0-rc.5",
"@vue/runtime-core": "3.0.0-rc.6",
"@vue/shared": "3.0.0-rc.6",
"csstype": "^2.6.8"
},
"dependencies": {
"@vue/shared": {
"version": "3.0.0-rc.6",
"resolved": "https://registry.npm.taobao.org/@vue/shared/download/@vue/shared-3.0.0-rc.6.tgz",
"integrity": "sha1-NvcLdt8eWK/BJi1EoicnbqEVblk="
}
}
},
"@vue/shared": {
"version": "3.0.0-rc.5",
"resolved": "https://registry.npm.taobao.org/@vue/shared/download/@vue/shared-3.0.0-rc.5.tgz?cache=0&sync_timestamp=1595985477452&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40vue%2Fshared%2Fdownload%2F%40vue%2Fshared-3.0.0-rc.5.tgz",
"integrity": "sha1-zqI3jj43Nj3cH13RWO3JybWz//A="
"integrity": "sha1-zqI3jj43Nj3cH13RWO3JybWz//A=",
"dev": true
},
"accepts": {
"version": "1.3.7",
......@@ -1930,9 +2016,9 @@
}
},
"postcss-modules": {
"version": "3.2.0",
"resolved": "https://registry.npm.taobao.org/postcss-modules/download/postcss-modules-3.2.0.tgz?cache=0&sync_timestamp=1593593118102&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-modules%2Fdownload%2Fpostcss-modules-3.2.0.tgz",
"integrity": "sha1-HKhw0ZfNCaeWQlPhLeKqyQbJQlY=",
"version": "3.2.1",
"resolved": "https://registry.npm.taobao.org/postcss-modules/download/postcss-modules-3.2.1.tgz?cache=0&sync_timestamp=1597924529084&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-modules%2Fdownload%2Fpostcss-modules-3.2.1.tgz",
"integrity": "sha1-XfaZqEBIJaWIiUNUrZ9+d056+Vw=",
"dev": true,
"requires": {
"generic-names": "^2.0.1",
......@@ -2490,13 +2576,41 @@
}
},
"vue": {
"version": "3.0.0-rc.5",
"resolved": "https://registry.npm.taobao.org/vue/download/vue-3.0.0-rc.5.tgz?cache=0&sync_timestamp=1595984034940&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fvue%2Fdownload%2Fvue-3.0.0-rc.5.tgz",
"integrity": "sha1-lzF11FqJKzvSPvXef6pK3ZxmJ18=",
"version": "3.0.0-rc.6",
"resolved": "https://registry.npm.taobao.org/vue/download/vue-3.0.0-rc.6.tgz",
"integrity": "sha1-hWuqfFcB6flgt4MfhoMjLramh9Y=",
"requires": {
"@vue/compiler-dom": "3.0.0-rc.5",
"@vue/runtime-dom": "3.0.0-rc.5",
"@vue/shared": "3.0.0-rc.5"
"@vue/compiler-dom": "3.0.0-rc.6",
"@vue/runtime-dom": "3.0.0-rc.6",
"@vue/shared": "3.0.0-rc.6"
},
"dependencies": {
"@vue/compiler-core": {
"version": "3.0.0-rc.6",
"resolved": "https://registry.npm.taobao.org/@vue/compiler-core/download/@vue/compiler-core-3.0.0-rc.6.tgz",
"integrity": "sha1-1brmugKAaKpUcGpcnB6ONKKWtM4=",
"requires": {
"@babel/parser": "^7.10.4",
"@babel/types": "^7.10.4",
"@vue/shared": "3.0.0-rc.6",
"estree-walker": "^2.0.1",
"source-map": "^0.6.1"
}
},
"@vue/compiler-dom": {
"version": "3.0.0-rc.6",
"resolved": "https://registry.npm.taobao.org/@vue/compiler-dom/download/@vue/compiler-dom-3.0.0-rc.6.tgz",
"integrity": "sha1-bXrexweDSrdbKridU/SE507sclM=",
"requires": {
"@vue/compiler-core": "3.0.0-rc.6",
"@vue/shared": "3.0.0-rc.6"
}
},
"@vue/shared": {
"version": "3.0.0-rc.6",
"resolved": "https://registry.npm.taobao.org/@vue/shared/download/@vue/shared-3.0.0-rc.6.tgz",
"integrity": "sha1-NvcLdt8eWK/BJi1EoicnbqEVblk="
}
}
},
"vue-router": {
......
......@@ -6,11 +6,11 @@
"build": "vite build"
},
"dependencies": {
"vue": "^3.0.0-rc.1",
"vue": "^3.0.0-rc.6",
"vue-router": "^4.0.0-beta.7"
},
"devDependencies": {
"vite": "^1.0.0-rc.1",
"@vue/compiler-sfc": "^3.0.0-rc.1"
"@vue/compiler-sfc": "^3.0.0-rc.6",
"vite": "^1.0.0-rc.1"
}
}
......@@ -5,13 +5,13 @@ export namespace Injection {
declare type InjectionRefKey<T> = InjectionKey<Ref<T>>
export namespace NavMenu {
export const GET_OR_FROM_CACHE: InjectionKey<(parentId: number) => Promise<MenuProto[]>> = Symbol("getOrFromCache");
export const getOrFromCache: InjectionKey<(parentId: number) => Promise<MenuProto[]>> = Symbol();
export const HEADER_MENUS: InjectionRefKey<MenuProto[]> = Symbol("headerMenus");
export const HEADER_SELECTED: InjectionRefKey<number> = Symbol("headerSelected");
export const UPDATE_HEADER_SELECTED: InjectionKey<(selected: number) => void> = Symbol("updateSelectedHeader");
export const headerMenus: InjectionRefKey<MenuProto[]> = Symbol();
export const headerSelected: InjectionRefKey<number> = Symbol();
export const updateHeaderSelected: InjectionKey<(selected: number) => void> = Symbol();
export const LEFTER_SELECTED: InjectionRefKey<number> = Symbol("lefterSelected");
export const UPDATE_LEFTER_SELECTED: InjectionKey<(selected: number) => void> = Symbol("setLefterSelected");
export const lefterSelected: InjectionRefKey<number> = Symbol();
export const updateLefterSelected: InjectionKey<(selected: number) => void> = Symbol();
}
}
\ No newline at end of file
......@@ -9,9 +9,9 @@
</template>
<template #pack-center>
<div class="route-history-bar">
<div class="route-history-item-container">
<div class="route-history-item"
<div class="route-tab-bar">
<div class="route-tab-item-container">
<div class="route-tab-item"
v-for="(routeName) in keepAliveNames"
:class="{'selected': showingAlive === routeName}"
@click.stop="tapRouteNav(aliveRoutes[routeName])"
......@@ -66,14 +66,14 @@ export default {
flex-grow: 1;
}
.route-history-bar {
.route-tab-bar {
width: 100%;
overflow-x: scroll;
overflow-y: hidden; }
.route-history-bar::-webkit-scrollbar {
.route-tab-bar::-webkit-scrollbar {
display: none; }
.route-history-item-container {
.route-tab-item-container {
flex-flow: row nowrap;
display: flex;
height: 25px;
......@@ -82,7 +82,7 @@ export default {
padding: 2px 5px 0;
border-bottom: #4875a4 solid 1px; }
.route-history-item {
.route-tab-item {
height: 24px;
font-size: 14px;
text-align: center;
......@@ -91,13 +91,13 @@ export default {
border-width: 1px 1px 0;
margin-left: 5px;
flex-shrink: 0; }
.route-history-item:nth-child(1) {
.route-tab-item:nth-child(1) {
margin-left: 0; }
.route-history-item.selected {
.route-tab-item.selected {
z-index: 1;
background-color: #ffffff;
border-bottom: #ffffff 2px solid; }
.route-history-item span {
.route-tab-item span {
display: inline-block;
min-width: 80px;
padding: 0 15px; }
......
......@@ -18,9 +18,9 @@ import {Injection} from "../../common/constant/Injection";
export default {
setup() {
let menus = inject(Injection.NavMenu.HEADER_MENUS);
let selected = inject(Injection.NavMenu.HEADER_SELECTED);
let updateSelectedHeader = inject(Injection.NavMenu.UPDATE_HEADER_SELECTED);
let menus = inject(Injection.NavMenu.headerMenus);
let selected = inject(Injection.NavMenu.headerSelected);
let updateSelectedHeader = inject(Injection.NavMenu.updateHeaderSelected);
function onChangeHandler(selected: number) {
updateSelectedHeader(selected);
......
......@@ -25,8 +25,8 @@ export default {
NavSubLeft,
},
setup() {
const headerMenus = inject(Injection.NavMenu.HEADER_MENUS);
const headerSelected = inject(Injection.NavMenu.HEADER_SELECTED);
const headerMenus = inject(Injection.NavMenu.headerMenus);
const headerSelected = inject(Injection.NavMenu.headerSelected);
return {
headerMenus,
......
......@@ -34,10 +34,10 @@ export default {
setup(props) {
const {headerMenuId} = props;
const getOrFromCache = inject(Injection.NavMenu.GET_OR_FROM_CACHE);
const getOrFromCache = inject(Injection.NavMenu.getOrFromCache);
const selected = inject(Injection.NavMenu.LEFTER_SELECTED);
const setSelected = inject(Injection.NavMenu.UPDATE_LEFTER_SELECTED);
const selected = inject(Injection.NavMenu.lefterSelected);
const setSelected = inject(Injection.NavMenu.updateLefterSelected);
const state = reactive({
menus: [],
......
......@@ -33,10 +33,10 @@ export default {
setup(props: NavSubLeftProps) {
const {parentId} = props;
const getOrFromCache = inject(Injection.NavMenu.GET_OR_FROM_CACHE);
const getOrFromCache = inject(Injection.NavMenu.getOrFromCache);
const headerSelected = inject(Injection.NavMenu.HEADER_SELECTED);
const lefterSelected = inject(Injection.NavMenu.LEFTER_SELECTED);
const headerSelected = inject(Injection.NavMenu.headerSelected);
const lefterSelected = inject(Injection.NavMenu.lefterSelected);
const menus = ref([] as MenuProto[]);
const selected = ref(-1);
......
import { createApp } from 'vue'
import App from './components/App/App.vue'
import './index.css'
import {router} from "./routes/router";
import './index.css'
createApp(App)
.use(router)
......
......@@ -37,6 +37,6 @@ export default defineComponent(() => {
return data ?? [];
};
provide(Injection.NavMenu.GET_OR_FROM_CACHE, getOrFromCache);
provide(Injection.NavMenu.getOrFromCache, getOrFromCache);
});
</script>
\ No newline at end of file
......@@ -8,7 +8,7 @@ import {MenuProto} from "../../model/MenuProto";
import {Injection} from "../../common/constant/Injection";
export default defineComponent(() => {
const getOrFromCache = inject(Injection.NavMenu.GET_OR_FROM_CACHE);
const getOrFromCache = inject(Injection.NavMenu.getOrFromCache);
// 提供head的状态
const headerState = reactive({
headerMenus: [] as MenuProto[],
......@@ -23,9 +23,9 @@ export default defineComponent(() => {
headerState.headerSelected = selected;
}
provide(Injection.NavMenu.HEADER_MENUS, toRef(headerState, "headerMenus"));
provide(Injection.NavMenu.HEADER_SELECTED, toRef(headerState, "headerSelected"));
provide(Injection.NavMenu.UPDATE_HEADER_SELECTED, setHeaderSelected);
provide(Injection.NavMenu.headerMenus, toRef(headerState, "headerMenus"));
provide(Injection.NavMenu.headerSelected, toRef(headerState, "headerSelected"));
provide(Injection.NavMenu.updateHeaderSelected, setHeaderSelected);
// 提供left的状态
const lefterState = reactive({
......@@ -36,8 +36,8 @@ export default defineComponent(() => {
lefterState.lefterSelected = selected;
}
provide(Injection.NavMenu.LEFTER_SELECTED, toRef(lefterState, "lefterSelected"));
provide(Injection.NavMenu.UPDATE_LEFTER_SELECTED, setLefterSelected);
provide(Injection.NavMenu.lefterSelected, toRef(lefterState, "lefterSelected"));
provide(Injection.NavMenu.updateLefterSelected, setLefterSelected);
// 初始加载header中的菜单
onMounted(async () => {
......
import {createRouter, createWebHashHistory, RouteRecordRaw} from 'vue-router'
import {defineAsyncComponent} from 'vue';
import {MenuProto} from "../model/MenuProto";
import {asyncRoutes} from "./async-routes";
export const routes: RouteRecordRaw[] = [
{
path: "/",
// @ts-ignore
component: defineAsyncComponent(() => import("../pages/index/indexMain/indexMain.vue"))
redirect: "/index/indexMain",
},
...asyncRoutes
];
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册