feat(directory): update routers
This commit is contained in:
@@ -8,27 +8,12 @@ import {
|
||||
} from "react-router-dom";
|
||||
import Root from "@/routes/root";
|
||||
import ErrorPage from "@/routes/error-page";
|
||||
import Index from "@/routes/index";
|
||||
import Operator from "@/routes/operator";
|
||||
import routes from "@/routes";
|
||||
import '@/App.css';
|
||||
import 'reset-css';
|
||||
|
||||
document.title = import.meta.env.VITE_APP_TITLE;
|
||||
|
||||
const routes = [
|
||||
{
|
||||
path: "",
|
||||
index: true,
|
||||
name: "Home",
|
||||
element: <Index />
|
||||
}, {
|
||||
path: "operator/:key",
|
||||
index: false,
|
||||
name: "Operator",
|
||||
element: <Operator />
|
||||
}
|
||||
]
|
||||
|
||||
const router = createBrowserRouter(
|
||||
createRoutesFromElements(
|
||||
<Route
|
||||
|
||||
@@ -1,24 +1,16 @@
|
||||
import {
|
||||
useState,
|
||||
useEffect
|
||||
} from 'react'
|
||||
import './index.css'
|
||||
import Home from "@/routes/path/home";
|
||||
import Operator from "@/routes/path/operator";
|
||||
|
||||
export default function Index(props) {
|
||||
useEffect(() => {
|
||||
fetch("/_assets/directory.json").then(res => res.json()).then(data => {
|
||||
console.log(data)
|
||||
})
|
||||
}, [])
|
||||
|
||||
return (
|
||||
<section>
|
||||
<section>
|
||||
1233
|
||||
</section>
|
||||
<section>
|
||||
22s
|
||||
</section>
|
||||
</section>
|
||||
)
|
||||
}
|
||||
export default [
|
||||
{
|
||||
path: "",
|
||||
index: true,
|
||||
name: "Home",
|
||||
element: <Home />
|
||||
}, {
|
||||
path: "operator/:key",
|
||||
index: false,
|
||||
name: "Operator",
|
||||
element: <Operator />
|
||||
}
|
||||
]
|
||||
24
directory/src/routes/path/home.jsx
Normal file
24
directory/src/routes/path/home.jsx
Normal file
@@ -0,0 +1,24 @@
|
||||
import {
|
||||
useState,
|
||||
useEffect
|
||||
} from 'react'
|
||||
import './home.css'
|
||||
|
||||
export default function Home(props) {
|
||||
useEffect(() => {
|
||||
fetch("/_assets/directory.json").then(res => res.json()).then(data => {
|
||||
console.log(data)
|
||||
})
|
||||
}, [])
|
||||
|
||||
return (
|
||||
<section>
|
||||
<section>
|
||||
1233
|
||||
</section>
|
||||
<section>
|
||||
22s
|
||||
</section>
|
||||
</section>
|
||||
)
|
||||
}
|
||||
@@ -22,13 +22,13 @@ class ViteRunner {
|
||||
},
|
||||
}
|
||||
|
||||
config() {
|
||||
get config() {
|
||||
let result;
|
||||
const temp = process.env.npm_lifecycle_event.split(':')
|
||||
this.#mode = temp[0] === "vite" ? temp[1] : process.argv[2]
|
||||
switch (this.#mode) {
|
||||
case 'directory':
|
||||
result = this.directory()
|
||||
result = this.#directoryConfig
|
||||
const op = temp[2] || process.argv[3]
|
||||
if (op !== 'preview') {
|
||||
rmdir(path.resolve(__projetRoot, this.#globalConfig.folder.release, "_directory"))
|
||||
@@ -39,7 +39,7 @@ class ViteRunner {
|
||||
case 'build':
|
||||
case 'build-all':
|
||||
case 'preview':
|
||||
result = this.operator()
|
||||
result = this.#operatorConfig
|
||||
break
|
||||
default:
|
||||
return
|
||||
@@ -47,8 +47,8 @@ class ViteRunner {
|
||||
return result
|
||||
}
|
||||
|
||||
async start() {
|
||||
const viteConfig = this.config();
|
||||
start() {
|
||||
const viteConfig = this.config;
|
||||
switch (this.#mode) {
|
||||
case 'dev':
|
||||
this.#dev(viteConfig)
|
||||
@@ -96,7 +96,7 @@ class ViteRunner {
|
||||
})()
|
||||
}
|
||||
|
||||
operator() {
|
||||
get #operatorConfig() {
|
||||
const operatorName = process.env.O || process.argv[3]
|
||||
assert(operatorName, 'Please set the operator name by using environment variable O.')
|
||||
return {
|
||||
@@ -104,6 +104,9 @@ class ViteRunner {
|
||||
envDir: path.join(__projetRoot, this.#globalConfig.folder.operator, operatorName),
|
||||
publicDir: path.resolve(__projetRoot, this.#globalConfig.folder.release, operatorName),
|
||||
root: path.resolve(__projetRoot),
|
||||
server: {
|
||||
...this.#baseViteConfig.server,
|
||||
},
|
||||
resolve: {
|
||||
alias: {
|
||||
'@': path.resolve(__projetRoot, './src'),
|
||||
@@ -118,18 +121,17 @@ class ViteRunner {
|
||||
}
|
||||
}
|
||||
|
||||
directory() {
|
||||
get #directoryConfig() {
|
||||
const directoryDir = path.resolve(__projetRoot, 'directory')
|
||||
this.#mode = process.argv[3]
|
||||
return {
|
||||
configFile: false,
|
||||
base: "",
|
||||
...this.#baseViteConfig,
|
||||
envDir: directoryDir,
|
||||
plugins: [react()],
|
||||
publicDir: path.resolve(__projetRoot, this.#globalConfig.folder.release),
|
||||
root: directoryDir,
|
||||
server: {
|
||||
host: '0.0.0.0',
|
||||
...this.#baseViteConfig.server,
|
||||
},
|
||||
resolve: {
|
||||
alias: {
|
||||
@@ -155,9 +157,9 @@ class ViteRunner {
|
||||
async function main() {
|
||||
if (process.env.npm_lifecycle_event.includes('vite')) return
|
||||
const runner = new ViteRunner()
|
||||
await runner.start()
|
||||
runner.start()
|
||||
}
|
||||
|
||||
main()
|
||||
|
||||
export default defineConfig((new ViteRunner()).config())
|
||||
export default defineConfig((new ViteRunner()).config)
|
||||
Reference in New Issue
Block a user