Descripción del proyecto Vue3
Un proyecto Vue 3 está compuesto por múltiples archivos y carpetas, cada parte tiene su función específica.
A continuación se presenta un análisis básico del código de un proyecto Vue 3, que te ayuda a entender la estructura del proyecto y la función de cada parte.
Un proyecto Vue 3 está compuesto por múltiples archivos y carpetas; los archivos principales incluyen
index.html、main.jsyApp.vue。Los componentes Vue son los bloques de construcción básicos de la aplicación; se definen utilizando componentes de un solo archivo (
.vuearchivo).Vue Router se utiliza para gestionar el enrutamiento, Vuex para la gestión del estado.
Estructura del proyecto
Un proyecto Vue 3 normalmente incluye los siguientes archivos y carpetas:
my-vue-app/ ├── node_modules/ # 项目依赖的第三方库 ├── public/ # 静态资源文件夹 │ ├── index.html # 应用的 HTML 模板 │ └── ... # 其他静态资源(如图片、字体等) ├── src/ # 项目源代码 │ ├── assets/ # 静态资源(如图片、字体等) │ ├── components/ # 可复用的 Vue 组件 │ ├── views/ # 页面级组件 │ ├── App.vue # 根组件 │ ├── main.js # 项目入口文件 │ ├── router.js # 路由配置 │ ├── store.js # Vuex 状态管理配置 │ └── ... # 其他配置和资源 ├── package.json # 项目配置和依赖管理 ├── package-lock.json # 依赖的精确版本锁定文件 └── README.md # 项目说明文档
Análisis de archivos principales
public/index.html
public/index.htmles el archivo de plantilla HTML de la aplicación Vue.
Vue monta la aplicación en<div id="app"></div>Dentro.
Ejemplo
<html>
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Vue App</title>
</head>
<body>
<div id="app"></div>
</body>
</html>
src/main.js
src/main.jses el archivo de entrada de la aplicación Vue.
src/main.jsSe encarga de crear la instancia de la aplicación Vue y montar el componente raíz (normalmente App.vue) en el div#app de index.html.
Ejemplo
import App from './App.vue';
createApp(App).mount('#app');
src/App.vue
src/App.vuees el componente raíz de la aplicación Vue.
src/App.vueNormalmente contiene el diseño principal de la aplicación y las vistas de las rutas.
Ejemplo
<div id="app">
<h1>Hello, Vue 3!</h1>
<router-view></router-view> <!-- Vista de ruta -->
</div>
</template>
<script>
export default {
name: 'App',
};
</script>
<style>
#app {
text-align: center;
margin-top: 50px;
}
</style>
src/components/
src/components/La carpeta contiene componentes Vue reutilizables.
Ejemplo: HelloWorld.vue
<div>
<h2>Hello, World!</h2>
</div>
</template>
<script>
export default {
name: 'HelloWorld',
};
</script>
<style scoped>
h2 {
color: blue;
}
</style>
src/views/
src/views/La carpeta contiene componentes a nivel de página, que normalmente se utilizan junto con la configuración de rutas.
Ejemplo: Home.vue
<div>
<h2>Home Page</h2>
</div>
</template>
<script>
export default {
name: 'Home',
};
</script>
src/router.js
src/router.jses el archivo de configuración de Vue Router, utilizado para definir las rutas.
Ejemplo
import Home from './views/Home.vue';
const routes = [
{
path: '/',
name: 'Home',
component: Home,
},
];
const router = createRouter({
history: createWebHistory(),
routes,
});
export default router;
src/store.js
src/store.jses el archivo de configuración de la gestión de estado de Vuex (si se usa Vuex).
Ejemplo
export default createStore({
state: {
message: 'Hello, Vuex!',
},
mutations: {
setMessage(state, newMessage) {
state.message = newMessage;
},
},
actions: {
updateMessage({ commit }, newMessage) {
commit('setMessage', newMessage);
},
},
});
package.json
package.jsones el archivo de configuración del proyecto, que incluye los metadatos, dependencias y scripts del proyecto.
Ejemplo
"name": "my-vue-app",
"version": "1.0.0",
"scripts": {
"serve": "vue-cli-service serve", // Iniciar el servidor de desarrollo
"build": "vue-cli-service build", // Compilar el código de producción
"lint": "vue-cli-service lint" // Formateo de código
},
"dependencies": {
"vue": "^3.2.0",
"vue-router": "^4.0.0",
"vuex": "^4.0.0"
}
}
Estructura básica de los componentes Vue
Los componentes Vue son los bloques de construcción principales de las aplicaciones Vue.
Un componente normalmente incluye las siguientes partes:
1. Componentes de un solo archivo (archivo .vue)
Un.vueEl archivo contiene tres partes:<template>、<script>y<style>。
Ejemplo
<div>
<h2>{{ message }}</h2>
<button @click="updateMessage">Actualizar mensaje</button>
</div>
</template>
<script>
export default {
name: 'MyComponent',
data() {
return {
message: 'Hello, Vue!',
};
},
methods: {
updateMessage() {
this.message = '¡El mensaje ha sido actualizado!';
},
},
};
</script>
<style scoped>
h2 {
color: green;
}
</style>
2. Plantilla (<template>)
-
Se define la interfaz de usuario del componente usando HTML y la sintaxis de plantillas de Vue.
-
Admite interpolación (
{{ }}), directivas (comov-if、v-for) y enlace de eventos (como@click)。
3. Script (<script>)
-
Define la lógica del componente, incluyendo datos, métodos, ciclos de vida, etc.
-
Usando
export defaultexportar las opciones del componente.
4. Estilos (<style>)
-
Define los estilos del componente.
-
Usando
scopedel atributo puede limitar los estilos al componente actual.
Flujo de ejecución del proyecto Vue
-
Inicio del servidor de desarrollo:
-
Ejecuta
npm run serveoyarn serve, inicia el servidor de desarrollo. -
Abre el navegador y visita
http://localhost:8080, visualiza la aplicación.
-
-
Compilar el código de producción:
-
Ejecuta
npm run buildoyarn build, genera el código de producción optimizado.
-
-
Formateo de código:
-
Ejecuta
npm run lintoyarn lint, formatea el código.
-