Vue程序启动过程

本人小白,只是记录下学习的体会供自己日后参考,如果能帮到你一点点,万分欣慰。

代码结构如下图:

其运行过程如图中的编号顺序,index.html是整个程序的入口。代码如下:

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<meta name="viewport" content="width=device-width,initial-scale=1.0">

<title>test</title>

</head>

<body>

<div id="app"></div>

<!-- built files will be auto injected -->

</body>

</html>

入口index.html代码中<div id="app"></div>中的app是这个文件的核心,index.html执行后,会调用main.js,但是为什么会调用main.js我也不知道,应该是在某个配置文件中,比如:webpack.base.conf.js文件下的app: ['babel-polyfill', './src/main.js'],不过当我把这地方改名后,出现了错误。不过这些不用管,我只是想知道是从哪里调用main.js的。

main.js文件代码如下:

import Vue from 'vue'
import App from './App'
import router from './router'
import store from './store'
Vue.config.productionTip = false

/* eslint-disable no-new */
new Vue({
  el: '#app',
  router,
  store,
  components: { App },
  template: '<App/>'
})

el: '#app'中的app与index.html中的 id="app"对应。同时该文件通过 components: { App }和template: '<App/>'指引程序找到一下个要执行的文件App.vue,同时加载了router路由和store。

在App.vue中

<template>
  <div id="apptest">
    <router-view />
  </div>
</template>

<script>
export default {
  created () {
   ///初始化项目业务配置数据,保存到store中
 this.$store.commit('setBaseConfig',baseConfig)
  }
}
</script>

<style>
html,
body,
#apptest {
  padding: 0;
  margin: 0;
  height: 100%;
}
</style>

其中最最重要的是:<router-view />用来在后面的路由中挂载不同的页面。

程序执行至此则主窗体还未启动起来。因为我的App.vue里什么页面都没有,只有router-view这个节点。但是还记得main.js用了router吗?,是的,这个会指引程序找到router下面的index.js。

index.js代码如下:

import Vue from 'vue'
import Router from 'vue-router'
import Index from '@/views/index'

Vue.use(Router)

export default new Router({
  routes: [
    {
      path: '/',
      name: 'Index',
      component: Index
    }
  ]
})

代码的

routes: [
    {
      path: '/',
      name: 'Index',
      component: Index
    }
  ]这里配置的主界面为views/index.vue组件: Index from '@/views/index。于是:http://localhost:8080/#/这个主页面就指向了views/index.vue。至此,主页面就加载上来了。

### 启动 Vue.js 程序的方法 为了启动一个基于 Vue.js 构建的应用程序,通常有两种主要的方式取决于项目的构建工具链。 #### 使用 Vite 打包并启动项目 Vite 是一种现代的前端构建工具,它提供了更快的开发服务器启动时间和热模块替换 (HMR)[^1]。要使用 Vite 来启动 Vue 应用: - 首先确保已经安装 Node.js 和 npm 或 yarn。 - 初始化新项目或者进入已有项目文件夹。 - 如果是新建项目,则可以通过 `npm create vite@latest` 命令快速搭建模板应用。 - 安装依赖项:运行 `npm install` 或者 `yarn install`。 - 启动本地开发服务器:执行 `npm run dev` 或者 `yarn dev` 即可开启服务,在浏览器中访问默认地址 http://localhost:3000 查看效果。 ```bash # 新建项目示例命令 $ npm create vite@latest my-vue-app --template vue $ cd my-vue-app $ npm install $ npm run dev ``` #### 使用 Webpack 打包并启动项目 Webpack 是另一种广泛使用的模块捆绑器,适合更复杂的场景需求。对于采用 Webpack 的 Vue 项目来说: - 类似于 Vite 方式准备环境和初始化项目结构。 - 可能会涉及到配置 webpack.config.js 文件以适应特定的需求。 - 安装必要的插件和支持库,比如 vue-loader。 - 利用脚本如 `npm start` 或者自定义 script 字段中的命令来编译资源并启动服务器。 ```json // package.json 中的部分内容可能如下所示 { "scripts": { "start": "webpack serve" } } ``` 除了上述两种常见的打包方式之外,如果只是想简单地引入 Vue 而不是整个单页应用程序(SPA),可以直接通过 `<script>` 标签加载 CDN 上提供的 Vue 版本到 HTML 页面里,并不需要额外的构建过程[^2]。 ```html <!-- 开发环境下 --> <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script> <!-- 生产环境下 --> <script src="https://cdn.jsdelivr.net/npm/vue@2"></script> ``` 一旦完成了这些设置之后,就可以按照正常的 JavaScript 编程逻辑去编写业务代码并与 DOM 结合起来实现交互功能了。需要注意的是,具体的操作细节可能会因为所选框架版本的不同而有所差异,请参照官方文档获取最准确的信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值