Vite創(chuàng)建Vue3項目及Vue3使用jsx詳解
Vite創(chuàng)建Vue3項目
Vite 需要 Node.js 版本 >= 12.0.0。(
node -v
查看自己當前的node版本)
- 使用 yarn:
yarn create @vitejs/app
- 使用 npm:
npm init @vitejs/app
1. 輸入項目名稱
這里輸入我們的項目名稱:vite-vue3
2. 選擇框架
這里選擇我們需要集成的框架:vue
- vanilla:原生js,沒有任何框架集成
- vue:vue3框架,只支持vue3
- react:react框架
- preact:輕量化react框架
- lit-element:輕量級web組件
- svelte:svelte框架
3. 選擇不同的vue
這里我們選擇:vue
4. 項目創(chuàng)建完成
5. 項目結(jié)構(gòu)
項目結(jié)構(gòu)非常簡單:
6. 啟動項目
- 進入項目:
cd vite-vue3
- 安裝依賴:
npm install
- 運行項目:
npm run dev
或npx vite
- 編譯項目:
npm run build
或npx vite build
啟動速度極快:
Vue3中使用jsx
Vite創(chuàng)建的Vue3項目中是無法直接使用jsx 的,需要引入插件來實現(xiàn)
1. 安裝插件
- 使用 yarn:
yarn add @vitejs/plugin-vue-jsx -D
- 使用 npm:
npm i @vitejs/plugin-vue-jsx -D
2. 注冊插件
vite.config.js 中:
import { defineConfig } from 'vite' import vue from '@vitejs/plugin-vue' import vueJsx from "@vitejs/plugin-vue-jsx"; // https://vitejs.dev/config/ export default defineConfig({ plugins: [vue(), vueJsx()] })
3. 使用插件
方法一:修改App.vue
不使用 jsx,App.vue
是這樣:
<script setup> import HelloWorld from './components/HelloWorld.vue'; </script> <template> <img alt="Vue logo" src="./assets/logo.png" /> <HelloWorld msg="Hello Vue 3 + Vite" /> </template>
使用 jsx,App.vue是這樣:
<script lang="jsx"> import { defineComponent } from 'vue'; import HelloWorld from './components/HelloWorld.vue'; import logo from './assets/logo.png'; export default defineComponent({ render: () => ( <div> <img alt="Vue logo" src={logo} /> <HelloWorld msg="Hello Vue 3 + Vite" /> </div> ), }); </script>
方法二:刪除App.vue,新建App.jsx
新建App.jsx文件
import { defineComponent } from 'vue'; import HelloWorld from './components/HelloWorld.vue'; import logo from './assets/logo.png'; export default defineComponent({ setup () { return () => { return ( <div> <img alt="Vue logo" src={logo} /> <HelloWorld msg="Hello Vue 3 + Vite" /> </div> ) } } });
再修改main.js的引入
import App from './App.vue' 改為 import App from './App'
import { createApp } from 'vue' import App from './App' createApp(App).mount('#app')
注意
- 不支持eslint在保存時,做eslint校驗
- vite的編譯入口不同于webpack,不是js文件,而是以index.html為編譯入口。在index.html中,通過<script type="module" src="/src/main.js"></script>加載main.js,這時請求到達了vite的serve層
總結(jié)
到此這篇關(guān)于Vite創(chuàng)建Vue3項目及Vue3使用jsx的文章就介紹到這了,更多相關(guān)Vite創(chuàng)建Vue3項目內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
vue使用showdown并實現(xiàn)代碼區(qū)域高亮的示例代碼
這篇文章主要介紹了vue使用showdown并實現(xiàn)代碼區(qū)域高亮的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-10-10vue + webpack如何繞過QQ音樂接口對host的驗證詳解
這篇文章主要給大家介紹了關(guān)于利用vue + webpack如何繞過QQ音樂接口對host的驗證的相關(guān)資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考借鑒,下面隨著小編來一起學習學習吧2018-07-07使用Vue CLI創(chuàng)建typescript項目的方法
這篇文章主要介紹了使用Vue CLI創(chuàng)建typescript項目的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-08-08el-select如何獲取當前選中的對象所有(item)數(shù)據(jù)
在開發(fā)業(yè)務(wù)場景中我們通常遇到一些奇怪的需求,下面這篇文章主要給大家介紹了關(guān)于el-select如何獲取當前選中的對象所有(item)數(shù)據(jù)的相關(guān)資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下2023-11-11