-
Notifications
You must be signed in to change notification settings - Fork 25
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat: add vue3-auto-import example (#32)
- Loading branch information
1 parent
4f97a24
commit f72cbfd
Showing
11 changed files
with
220 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
# Local | ||
.DS_Store | ||
*.local | ||
*.log* | ||
|
||
# Dist | ||
node_modules | ||
dist/ | ||
|
||
# IDE | ||
.vscode/* | ||
!.vscode/extensions.json | ||
.idea |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
{ | ||
"recommendations": ["Vue.volar", "Vue.vscode-typescript-vue-plugin"] | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
# Rsbuild Project | ||
|
||
## Setup | ||
|
||
Install the dependencies: | ||
|
||
```bash | ||
pnpm install | ||
``` | ||
|
||
## Get Started | ||
|
||
Start the dev server: | ||
|
||
```bash | ||
pnpm dev | ||
``` | ||
|
||
Build the app for production: | ||
|
||
```bash | ||
pnpm build | ||
``` | ||
|
||
Preview the production build locally: | ||
|
||
```bash | ||
pnpm preview | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,66 @@ | ||
/* eslint-disable */ | ||
/* prettier-ignore */ | ||
// @ts-nocheck | ||
// noinspection JSUnusedGlobalSymbols | ||
// Generated by unplugin-auto-import | ||
export {} | ||
declare global { | ||
const EffectScope: typeof import('vue')['EffectScope'] | ||
const computed: typeof import('vue')['computed'] | ||
const createApp: typeof import('vue')['createApp'] | ||
const customRef: typeof import('vue')['customRef'] | ||
const defineAsyncComponent: typeof import('vue')['defineAsyncComponent'] | ||
const defineComponent: typeof import('vue')['defineComponent'] | ||
const effectScope: typeof import('vue')['effectScope'] | ||
const getCurrentInstance: typeof import('vue')['getCurrentInstance'] | ||
const getCurrentScope: typeof import('vue')['getCurrentScope'] | ||
const h: typeof import('vue')['h'] | ||
const inject: typeof import('vue')['inject'] | ||
const isProxy: typeof import('vue')['isProxy'] | ||
const isReactive: typeof import('vue')['isReactive'] | ||
const isReadonly: typeof import('vue')['isReadonly'] | ||
const isRef: typeof import('vue')['isRef'] | ||
const markRaw: typeof import('vue')['markRaw'] | ||
const nextTick: typeof import('vue')['nextTick'] | ||
const onActivated: typeof import('vue')['onActivated'] | ||
const onBeforeMount: typeof import('vue')['onBeforeMount'] | ||
const onBeforeUnmount: typeof import('vue')['onBeforeUnmount'] | ||
const onBeforeUpdate: typeof import('vue')['onBeforeUpdate'] | ||
const onDeactivated: typeof import('vue')['onDeactivated'] | ||
const onErrorCaptured: typeof import('vue')['onErrorCaptured'] | ||
const onMounted: typeof import('vue')['onMounted'] | ||
const onRenderTracked: typeof import('vue')['onRenderTracked'] | ||
const onRenderTriggered: typeof import('vue')['onRenderTriggered'] | ||
const onScopeDispose: typeof import('vue')['onScopeDispose'] | ||
const onServerPrefetch: typeof import('vue')['onServerPrefetch'] | ||
const onUnmounted: typeof import('vue')['onUnmounted'] | ||
const onUpdated: typeof import('vue')['onUpdated'] | ||
const provide: typeof import('vue')['provide'] | ||
const reactive: typeof import('vue')['reactive'] | ||
const readonly: typeof import('vue')['readonly'] | ||
const ref: typeof import('vue')['ref'] | ||
const resolveComponent: typeof import('vue')['resolveComponent'] | ||
const shallowReactive: typeof import('vue')['shallowReactive'] | ||
const shallowReadonly: typeof import('vue')['shallowReadonly'] | ||
const shallowRef: typeof import('vue')['shallowRef'] | ||
const toRaw: typeof import('vue')['toRaw'] | ||
const toRef: typeof import('vue')['toRef'] | ||
const toRefs: typeof import('vue')['toRefs'] | ||
const toValue: typeof import('vue')['toValue'] | ||
const triggerRef: typeof import('vue')['triggerRef'] | ||
const unref: typeof import('vue')['unref'] | ||
const useAttrs: typeof import('vue')['useAttrs'] | ||
const useCssModule: typeof import('vue')['useCssModule'] | ||
const useCssVars: typeof import('vue')['useCssVars'] | ||
const useSlots: typeof import('vue')['useSlots'] | ||
const watch: typeof import('vue')['watch'] | ||
const watchEffect: typeof import('vue')['watchEffect'] | ||
const watchPostEffect: typeof import('vue')['watchPostEffect'] | ||
const watchSyncEffect: typeof import('vue')['watchSyncEffect'] | ||
} | ||
// for type re-export | ||
declare global { | ||
// @ts-ignore | ||
export type { Component, ComponentPublicInstance, ComputedRef, ExtractDefaultPropTypes, ExtractPropTypes, ExtractPublicPropTypes, InjectionKey, PropType, Ref, VNode, WritableComputedRef } from 'vue' | ||
import('vue') | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
{ | ||
"name": "rsbuild-vue3", | ||
"private": true, | ||
"version": "1.0.0", | ||
"scripts": { | ||
"dev": "rsbuild dev --open", | ||
"build": "rsbuild build", | ||
"preview": "rsbuild preview" | ||
}, | ||
"dependencies": { | ||
"vue": "^3.4.19" | ||
}, | ||
"devDependencies": { | ||
"@rsbuild/core": "^0.4.8", | ||
"@rsbuild/plugin-vue": "^0.4.8", | ||
"typescript": "^5.3.0", | ||
"unplugin-auto-import": "^0.17.5" | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
import { defineConfig } from "@rsbuild/core"; | ||
import { pluginVue } from "@rsbuild/plugin-vue"; | ||
import AutoImport from "unplugin-auto-import/rspack"; | ||
|
||
export default defineConfig({ | ||
plugins: [pluginVue()], | ||
tools: { | ||
rspack: { | ||
plugins: [ | ||
AutoImport({ | ||
// targets to transform | ||
include: [ | ||
/\.[tj]sx?$/, // .ts, .tsx, .js, .jsx | ||
/\.vue$/, | ||
/\.vue\?vue/, // .vue | ||
], | ||
// global imports to register | ||
imports: ["vue"], | ||
}), | ||
], | ||
}, | ||
}, | ||
}); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
<template> | ||
<div class="content"> | ||
<h1>{{ title }}</h1> | ||
<p>Start building amazing things with Rsbuild.</p> | ||
</div> | ||
</template> | ||
|
||
<script setup lang="ts"> | ||
const title = ref("Rsbuild with Vue"); | ||
</script> | ||
|
||
<style scoped> | ||
.content { | ||
display: flex; | ||
min-height: 100vh; | ||
line-height: 1.1; | ||
text-align: center; | ||
flex-direction: column; | ||
justify-content: center; | ||
} | ||
.content h1 { | ||
font-size: 3.6rem; | ||
font-weight: 700; | ||
} | ||
.content p { | ||
font-size: 1.2rem; | ||
font-weight: 400; | ||
opacity: 0.5; | ||
} | ||
</style> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
/// <reference types="@rsbuild/core/types" /> | ||
|
||
declare module '*.vue' { | ||
import type { DefineComponent } from 'vue'; | ||
|
||
// eslint-disable-next-line | ||
const component: DefineComponent<{}, {}, any>; | ||
export default component; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
body { | ||
margin: 0; | ||
color: #fff; | ||
font-family: Inter, Avenir, Helvetica, Arial, sans-serif; | ||
background-image: linear-gradient(to bottom, #020917, #101725); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
import './index.css'; | ||
import App from './App.vue'; | ||
|
||
createApp(App).mount('#root'); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
{ | ||
"compilerOptions": { | ||
"target": "ES2020", | ||
"lib": ["DOM", "ES2020"], | ||
"module": "ESNext", | ||
"jsx": "preserve", | ||
"jsxImportSource": "vue", | ||
"strict": true, | ||
"skipLibCheck": true, | ||
"isolatedModules": true, | ||
"resolveJsonModule": true, | ||
"moduleResolution": "bundler", | ||
"useDefineForClassFields": true | ||
}, | ||
"include": ["src", "auto-imports.d.ts"] | ||
} |