您好,登录后才能下订单哦!
密码登录
            
            
            
            
        登录注册
            
            
            
        点击 登录注册 即表示同意《亿速云用户服务条款》
        # 如何搭建Vue 3.0项目
## 前言
Vue.js 作为当前最流行的前端框架之一,其3.0版本带来了诸多性能优化和新特性。本文将详细介绍从零开始搭建Vue 3.0项目的完整流程,涵盖环境准备、项目初始化、目录结构解析、核心配置以及进阶优化等内容,帮助开发者快速上手Vue 3开发。
---
## 一、环境准备
### 1.1 安装Node.js
Vue 3需要Node.js 12.x或更高版本:
```bash
# 检查Node版本
node -v
# 推荐使用nvm管理Node版本
nvm install 16
nvm use 16
推荐使用npm或yarn:
# 安装yarn
npm install -g yarn
# 全局安装Vue CLI
npm install -g @vue/cli
# 创建项目
vue create vue3-demo
# 选择Vue 3预设
? Please pick a preset: 
  Default ([Vue 2] babel, eslint) 
❯ Default (Vue 3) ([Vue 3] babel, eslint) 
  Manually select features
更快的现代构建工具:
npm create vite@latest vue3-vite-demo --template vue
cd vue3-vite-demo
npm install
npm run dev
vue3-project/
├── public/                # 静态资源
├── src/
│   ├── assets/            # 静态资源
│   ├── components/        # 组件
│   ├── composables/       # 组合式函数(Vue 3推荐)
│   ├── router/            # 路由配置
│   ├── stores/            # Pinia状态管理
│   ├── views/             # 页面级组件
│   ├── App.vue            # 根组件
│   └── main.js            # 应用入口
├── .env                   # 环境变量
├── vite.config.js         # Vite配置
└── package.json
import { createApp } from 'vue'
import App from './App.vue'
const app = createApp(App)
// 注册全局组件
app.component('MyComponent', MyComponent)
app.mount('#app')
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
export default defineConfig({
  plugins: [vue()],
  server: {
    port: 3000,
    open: true
  },
  resolve: {
    alias: {
      '@': path.resolve(__dirname, './src')
    }
  }
})
# .env.development
VITE_API_BASE=http://dev.example.com
// 使用环境变量
console.log(import.meta.env.VITE_API_BASE)
<script setup>
import { ref, computed, onMounted } from 'vue'
const count = ref(0)
const double = computed(() => count.value * 2)
function increment() {
  count.value++
}
onMounted(() => {
  console.log('组件挂载')
})
</script>
<teleport to="#modals">
  <div class="modal">...</div>
</teleport>
<template>
  <header>...</header>
  <main>...</main>
  <footer>...</footer>
</template>
npm install vue-router@4
// router/index.js
import { createRouter, createWebHistory } from 'vue-router'
const routes = [
  { path: '/', component: Home },
  { path: '/about', component: About }
]
const router = createRouter({
  history: createWebHistory(),
  routes
})
router.beforeEach((to, from) => {
  if (to.meta.requiresAuth) {
    return '/login'
  }
})
npm install pinia
// stores/counter.js
import { defineStore } from 'pinia'
export const useCounterStore = defineStore('counter', {
  state: () => ({ count: 0 }),
  actions: {
    increment() {
      this.count++
    }
  }
})
<script setup>
import { useCounterStore } from '@/stores/counter'
const counter = useCounterStore()
</script>
// 动态导入组件
const Home = () => import('./views/Home.vue')
以Element Plus为例:
// vite.config.js
import Components from 'unplugin-vue-components/vite'
import { ElementPlusResolver } from 'unplugin-vue-components/resolvers'
export default defineConfig({
  plugins: [
    Components({
      resolvers: [ElementPlusResolver()]
    })
  ]
})
npm install rollup-plugin-visualizer
// vite.config.js
import { visualizer } from 'rollup-plugin-visualizer'
export default defineConfig({
  plugins: [visualizer()]
})
npm run build
FROM nginx:alpine
COPY dist /usr/share/nginx/html
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]
浏览器兼容性问题
配置@vitejs/plugin-legacy支持传统浏览器
SFC样式问题
使用<style scoped>或CSS Modules
HMR不生效
检查Vite服务器配置和网络代理
通过本文的指导,您应该已经掌握了Vue 3项目的完整搭建流程。Vue 3带来的Composition API、性能优化等特性,能够帮助开发者构建更高效的前端应用。建议继续探索: - Vue 3响应式原理 - 服务端渲染(SSR) - 微前端架构集成
项目示例代码:https://github.com/example/vue3-starter
官方文档:https://vuejs.org/ “`
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。