Vue 笔记
1. Vue 简介
Vue.js 是一个用于构建用户界面的渐进式框架。它允许开发者通过组件化的方式来构建复杂的前端应用。
2. 安装 Vue
2.1. 使用 Vue CLI 安装
Vue CLI 是一个官方的命令行工具,用于快速生成 Vue 项目。
-  全局安装 Vue CLI: bash npm install -g @vue/cli
-  创建新的 Vue 项目: bash vue create my-project
在创建过程中,选择需要的配置(例如 Babel、Router、Vuex 等)。
-  进入项目目录: bash cd my-project
-  启动开发服务器: 
bash npm run serve
访问 http://localhost:8080 查看应用。
5.Compiles and minifies for production
npm run build
- Lints and fixes files
npm run lint
- Customize configuration
2.2. 使用 CDN 安装
如果只是想快速试用 Vue,可以通过 CDN 引入:
<script src="https://cdn.jsdelivr.net/npm/vue@2"></script>
3. Vue 项目结构
一个典型的 Vue 项目结构如下:
my-project/
├── node_modules/
├── public/
│   └── index.html        # 应用入口 HTML
└── src/
    ├── assets/           # 资源文件(图片、样式等)
    ├── components/       # 组件
    ├── App.vue           # 根组件
    ├── main.js           # 应用入口 JS
    └── ...
4. Vue 整体流程
4.1. 加载过程
-  index.html:
-  这是应用的入口文件,包含 <div id="app"></div>作为 Vue 应用的挂载点。
      <!DOCTYPE html>
      <html lang="">
      <head>
         <meta charset="utf-8">
         <meta name="viewport" content="width=device-width,initial-scale=1.0">
         <title>Your Vue App</title>
      </head>
      <body>
         <noscript>
            <strong>Please enable JavaScript to run this app.</strong>
         </noscript>
         <div id="app"></div>
         <!-- built files will be auto injected -->
      </body>
      </html>
- main.js:
- 在此文件中,导入 Vue 和根组件 App.vue,并将其挂载到#app元素。
   import { createApp } from 'vue';
   import App from './App.vue';
   createApp(App).mount('#app');
- App.vue:
- 根组件,定义了应用的主要结构,通常会包含其他子组件。
   <template>
       <div>
           <HelloWorld msg="Welcome to Your Vue.js App"/>
       </div>
   </template>
   <script>
   import HelloWorld from './components/HelloWorld.vue';
   export default {
       name: 'App',
       components: {
           HelloWorld
       }
   }
   </script>
   <style>
   /* 样式 */
   </style>
- HelloWorld.vue:
- 这是一个示例子组件,可以在 App.vue中使用。
   <template>
       <div>{{ msg }}</div>
   </template>
   <script>
   export default {
       props: ['msg']
   }
   </script>
   <style>
   /* 子组件样式 */
   </style>
4.2. 渲染过程
- index.html:
-  这是整个应用的入口文件。浏览器加载这个 HTML 文件,并找到 <div id="app"></div>作为 Vue 应用的挂载点。
-  main.js:
-  这是应用的入口 JavaScript 文件。在这里,通常会导入 createApp函数和根组件App.vue,然后使用createApp(App).mount('#app')将根组件挂载到#app元素中。这个过程启动了 Vue 应用。
-  App.vue:
-  这是根组件,定义了应用的主要结构。在其模板部分,可以渲染其他子组件,如 HelloWorld.vue。在<script>部分,App.vue会导入并注册这些子组件。
-  HelloWorld.vue(或其他子组件):
- 这是一个具体的子组件,可以在 App.vue中使用。它可以接收来自父组件(App.vue)的 props,并在自己的模板中展示内容。
这个结构展示了 Vue 的组件化思想和单页面应用的工作流程,确保了代码的模块化和重用性。