当前位置:首页 > 技术分析 > 正文内容

35《Vue 入门教程》Vue-Cli 项目文件结构分析

ruisui883个月前 (02-03)技术分析11

1. 前言

在上一小节中,我们介绍了 Vue-Cli 初始化项目,本小节我们一起来分析以下 Vue-Cli 创建项目的文件结构。

2. 目录结构

首先我们先看以下用 Vue-Cli 创建项目的整体结构:

项目相关的代码,我们都放在 src 的文件夹中,该文件夹中的结构如下:

  • assets 是资源文件夹,通常我们会把图片资源放在里面。
  • components 文件夹通常会放一些组件。
  • router 文件夹里面放的是 VueRouter 的相关配置。
  • store 文件夹里面放的是 Vuex 的相关配置。
  • views 文件夹里面通常放置页面的 .vue 文件。
  • App.vue 定义了一个根组件。
  • main.js 是项目的入口文件。

Vue-Cli 给我们提供了一个默认的项目文件结构,当然你并不是一定要按照这个文件结构来编写项目,你完全可以根据项目的需要或者个人喜好对项目结构加以改写。

3. 运行项目

我们打开之前通过脚手架创建的项目,在项目的根目录下运行:

npm run serve

出现界面后:

我们可以打开浏览器预览项目:

4. 详细分析

可能,同学们对这样一个项目结构还不是很熟悉,接下来,我们将对主要的几个项目文件详细分析。

4.1 main.js 入口文件分析

打开 main.js 入口文件,我们可以看到这段代码:

import Vue from "vue";
import App from "./App.vue";
import router from "./router";
import store from "./store";

我们通过 import 引入了 App 组件、VueRouter 配置 router、Vuex 配置 store。

new Vue({
  router,
  store,
  render: h => h(App)
}).$mount("#app");

通过 new Vue () 创建 Vue 实例,并将 router、store 配置传入。通过 render 函数渲染组件 App。并将 Vue 实例挂载到 id 为 app 的 div 上。

4.2 router 文件分析

打开 router/index.js 文件,我们可以看到路由配置信息:

const routes = [
  {
    path: "/",
    name: "Home",
    component: Home
  },
  {
    path: "/about",
    name: "About",
    component: () =>
      import( "../views/About.vue")
  }
];

定义了两个路由:

  • 路由 ‘/’ 匹配组件 Home。
  • 路由 ‘/about’ 匹配组件 About。

4.3 store 文件分析

打开 store/index.js 文件,我们可以看到 Vuex 的配置信息:

import Vue from "vue";
import Vuex from "vuex";

Vue.use(Vuex);

export default new Vuex.Store({
  state: {},
  mutations: {},
  actions: {},
  modules: {}
});

5. 小结

在本小节我们介绍了脚手架根据初始化项目的文件结构。

扫描二维码推送至手机访问。

版权声明:本文由ruisui88发布,如需转载请注明出处。

本文链接:http://www.ruisui88.com/post/897.html

分享给朋友:

“35《Vue 入门教程》Vue-Cli 项目文件结构分析” 的相关文章

基于Ubuntu的Linux Lite 6.0发行版正式发布

开发者 Jerry Bezencon 今天宣布,基于 Ubuntu 的 Linux Lite 6.0 发行版正式发布。本次更新代号为“Fluorite”,基于 Ubuntu 22.04 LTS (Jammy Jellyfish) 系统,它由长期支持的 Linux 5.15 LTS 内核系列驱动。下载...

Vue3 如何实现父子组件传值?

在Vue 3中,要实现父子组件传值效果主要通过props和emit两种机制来实现,下面我们就来详细介绍一下这两种机制。父组件向子组件传值propsprops是Vue组件的一种机制,主要的作用就是实现从父组件向子组件传递数据值,在父组件上通过在子组件标签上定义属性来实现数据属性值的传递,在子组件中通过...

深入理解Vue.js组件通信:父子组件与子父组件数据交互详解

什么是Vue组件通讯 Vue.js 组件通信是指在 Vue 应用的不同组件之间进行数据交换和状态同步的过程。由于 Vue 的组件是基于单文件组件(SFCs)的模块化设计,每个组件都有自己的作用域,因此它们不能直接访问彼此的数据。为了使组件之间能够协同工作,Vue 提供了几种不同的通信方式。以下是 V...

快速上手React

web前端三大主流框架1、Angular大家眼里比较牛的框架,甚至有人说三大框架中只有它能称得上一个完整的框架,因为它包含的东西比较完善,包含模板,数据双向绑定,路由,模块化,服务,过滤器,依赖注入等所有功能。对于刚开始学习使用框架的小伙伴们,可以推荐这个框架,学会之后简直能颠覆之前你对前端开发的认...

身体越柔软越好?刻苦拉伸可能反而不健康 | 果断练

坐下伸直膝盖,双手用力向前伸,再用力……比昨天前进了一厘米,又进步了! 这么努力地拉伸,每个人都有自己的目标,也许是身体健康、线条柔美、放松肌肉、体测满分,也可能为了随时劈个叉,享受一片惊呼。 不过,身体柔软,可以享受到灵活的福利,也可能付出不稳定的代价,并不是越刻苦拉伸越好。太硬或者太软,都不安全...

美国民众负债累累 但今年假期消费者支出仍将创下新高

智通财经APP获悉,在迎接假期之际,许多美国人已经背负了创纪录的信用卡债务。然而,今年假期消费者支出仍将创下新高。根据美国零售联合会(NRF)上周发布的报告,预计今年11月1日至12月31日期间的消费总额将达到创纪录的9795亿至9890亿美元之间。NRF首席经济学家Jack Kleinhenz表示...