Vue3-Projektbeschreibung
Ein Vue-3-Projekt besteht aus mehreren Dateien und Ordnern, die jeweils einen bestimmten Zweck haben.
Das Folgende ist eine grundlegende Analyse des Vue-3-Projektcodes, um Ihnen zu helfen, die Projektstruktur und die Funktion jedes Teils zu verstehen.
Ein Vue-3-Projekt besteht aus mehreren Dateien und Ordnern, und zu den Kerndateien gehören
index.html、main.jsundApp.vue。Vue-Komponenten sind die grundlegenden Bausteine einer Anwendung, die mithilfe von Single-File Components (
.vueDatei) definiert werden.Vue Router wird für die Routenverwaltung verwendet und Vuex für die Zustandsverwaltung.
Projektstruktur
Ein Vue-3-Projekt enthält normalerweise die folgenden Dateien und Ordner:
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 # 项目说明文档
Kern-Dateianalyse
public/index.html
public/index.htmlEs ist die HTML-Vorlagendatei der Vue-Anwendung.
Vue wird die Anwendung an<div id="app"></div>darin abgelegt werden.
Beispiel
<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 ist die Einstiegsdatei der Vue-Anwendung.
src/main.jsEs ist dafür verantwortlich, die Vue-Anwendungsinstanz zu erstellen und die Stammkomponente (normalerweise App.vue) an das div#app in index.html zu mounten.
Beispiel
import App from './App.vue';
createApp(App).mount('#app');
src/App.vue
src/App.vueEs ist die Stammkomponente der Vue-Anwendung.
src/App.vueNormalerweise enthält es das Hauptlayout und die Routenansichten der Anwendung.
Beispiel
<div id="app">
<h1>Hallo, Vue 3!</h1>
<router-view></router-view> <!-- Router-Ansicht -->
</div>
</template>
<script>
export default {
name: 'App',
};
</script>
<style>
#app {
text-align: center;
margin-top: 50px;
}
</style>
src/components/
src/components/Der Ordner enthält wiederverwendbare Vue-Komponenten.
Beispiel: HelloWorld.vue
<div>
<h2>Hallo, Welt!</h2>
</div>
</template>
<script>
export default {
name: 'HelloWorld',
};
</script>
<style scoped>
h2 {
color: blue;
}
</style>
src/views/
src/views/Der Ordner enthält Komponenten auf Seitenebene, die normalerweise zusammen mit der Routing-Konfiguration verwendet werden.
Beispiel: Home.vue
<div>
<h2>Startseite</h2>
</div>
</template>
<script>
export default {
name: 'Home',
};
</script>
src/router.js
src/router.jsEs ist die Konfigurationsdatei für den Vue Router, die zum Definieren von Routen verwendet wird.
Beispiel
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 ist die Konfigurationsdatei für die Vuex-Zustandsverwaltung (wenn Vuex verwendet wird).
Beispiel
export default createStore({
state: {
message: 'Hello, Vuex!',
},
mutations: {
setMessage(state, newMessage) {
state.message = newMessage;
},
},
actions: {
updateMessage({ commit }, newMessage) {
commit('setMessage', newMessage);
},
},
});
package.json
package.jsonSie ist die Projektkonfigurationsdatei, die Projektmetadaten, Abhängigkeiten und Skripte enthält.
Beispiel
"name": "my-vue-app",
"version": "1.0.0",
"scripts": {
"serve": "vue-cli-service serve", // Entwicklungsserver starten
"build": "vue-cli-service build", // Produktionscode erstellen
"lint": "vue-cli-service lint" // Code-Formatierung
},
"dependencies": {
"vue": "^3.2.0",
"vue-router": "^4.0.0",
"vuex": "^4.0.0"
}
}
Grundstruktur von Vue-Komponenten
Vue-Komponenten sind die zentralen Bausteine einer Vue-Anwendung.
Eine Komponente enthält normalerweise die folgenden Teile:
1. Single-File-Komponenten (.vue-Dateien)
A.vueDie Datei enthält drei Teile:<template>、<script>und<style>。
Beispiel
<div>
<h2>{{ message }}</h2>
<button @click="updateMessage">Nachricht aktualisieren</button>
</div>
</template>
<script>
export default {
name: 'MyComponent',
data() {
return {
message: 'Hello, Vue!',
};
},
methods: {
updateMessage() {
this.message = 'Message updated!';
},
},
};
</script>
<style scoped>
h2 {
color: green;
}
</style>
2. Template (<template>)
-
Definiert die UI der Komponente mithilfe von HTML und Vue-Template-Syntax.
-
Unterstützt Interpolation (
{{ }}), Direktiven (wie z. B.v-if、v-for) und Ereignisbindung (wie z. B.@click)。
3. Script (<script>)
-
Definiert die Logik der Komponente, einschließlich data, methods, Lifecycle-Hooks usw.
-
Verwenden Sie
export defaultum Komponentenoptionen zu exportieren.
4. Style (<style>)
-
Definiert die Styles der Komponente.
-
Verwendung
scopeddas Attribut kann die Styles auf die aktuelle Komponente beschränken.
Ausführungsprozess eines Vue-Projekts
-
Den Entwicklungsserver starten:
-
Führen Sie
npm run serveoderyarn serveum den Entwicklungsserver zu starten. -
Öffnen Sie den Browser und besuchen Sie
http://localhost:8080um die Anwendung anzuzeigen.
-
-
Produktionscode erstellen:
-
Führen Sie
npm run buildoderyarn buildum optimierten Produktionscode zu generieren.
-
-
Code-Formatierung:
-
Führen Sie
npm run lintoderyarn lintum den Code zu formatieren.
-