查看tsconfig文件修改相关配置
vite本事支持tsx组件编写 但是vue编译过程中是无法通过模版整合到vue中去编译渲染,于是我们引入插件
yarn add -D @vitejs/plugin-vue-jsx
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import setupJSX from '@vitejs/plugin-vue-jsx'
// https://vitejs.dev/config/
export default defineConfig({
plugins: [vue(),setupJSX()],
})
yarn add -D vitepress
mkdir docs && echo `# Hello VitePress` > docs/index.md
"scripts": {
"docs:dev":"vitepress dev docs",
"docs:build": "vitepress build docs",
"docs:serve": "vitepress serve docs"
}
pnpm run docs:dev
const sidebar =()=>({
'/': [
{
text: 'Components',
items: [
// This shows `/guide/index.md` page.
{ text: 'Button', link: '/components/button/' }, // /guide/index.md
{ text: 'Input', link: '/components/input/' }, // /guide/one.md
]
},
]
})
pnpm i -D vitepress-theme-demoblock
// /docs/.vitepress/config.ts
import { demoBlockPlugin } from 'vitepress-theme-demoblock'
export default {
themeConfig: {
sidebar:sidebar()
},
markdown:{
config:(md)=>{
md.use(demoBlockPlugin)
}
}
}
// /docs/.vitepress/theme/index.ts
import DefaultTheme from 'vitepress/theme'
import Button from '../../../dev-ui/button/button'
import Demo from 'vitepress-theme-demoblock/dist/client/components/Demo.vue'
import DemoBlock from 'vitepress-theme-demoblock/dist/client/components/DemoBlock.vue'
import 'vitepress-theme-demoblock/dist/theme/styles/index.css'
export default {
...DefaultTheme,
enhanceApp(ctx){
const {app}=ctx
app.component("d-button",Button)
DefaultTheme.enhanceApp(ctx)
app.component("Demo",Demo)
app.component("DemoBlock",DemoBlock)
}
}
:::demo
```vue
<template>
<div>12323</div>
<d-button></d-button>
</template>
/```
:::
- commander 创建命令
- inquirer 脚本问答交互
- fs-extra 文件系统操作的封装
- kolorist 提示文字颜色变换
pnpm i -D commander inquirer fs-extra kolorist
npx的意义 npm2.0后携带的工具,执行node_modules下的命令
文件目录 dev-cli/src/commands/build.js 拓展
按需打包 dev-cli/src/commands/demand-loading.js