IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> Vue脚手架项目结构分析 -> 正文阅读

[JavaScript知识库]Vue脚手架项目结构分析

一、脚手架项目目录结构

①?build?目录内文件介绍

文件名

描述

build.js

构建生产环境的代码

check-versions.js

检查?Node.js?环境?和?NPM?的版本

utils.js

构建辅助工具类,类中主要是通过运算,来动态生成?webpack?一些加载器的配置

vue-loader.conf.js

用来配置?sourceMap,项目打包后会对?JS?压缩,sourceMap?用来记录代码压缩前后的对应关系,方便调试

webpack.base.conf.js

webpack?配置文件?-?开发环境和生产环境的通用配置。将基础配置、开发环境和生产环境各对应一个文件比较易于维护

webpack.dev.conf.js

webpack?配置文件?-?开发环境的配置,webpack?打包过程中内容会与?webpack.base.conf.js?合并

webpack.prod.conf.js

webpack?配置文件?-?生产环境的配置,webpack?打包过程中内容会与?webpack.base.conf.js?合并

建议每个文件的内容都好好读一下,因为有?webpack?和?npm?的基础,这些配置文件慢慢看还是可以看懂的

②?config?目录内文件介绍

文件名

描述

dev.env.js

定义开发环境构建时要用的变量

prod.env.js

定义生产环境构建时要用的变量

index.js

定义开发环境和生产环境构建时都要使用的变量

③?src?目录内文件介绍

文件名

描述

assets?->?logo.png

Demo?中要用的图片,会被?webpack?的加载器当作模块处理,实际项目中的静态资源也建议放在该目录下

components?->?HelloWorld.vue

Demo?中定义的组件,实际项目中的自定义组件也建议放在该目录下

App.vue

Demo?中的入口组件,实际项目中的入口组件也建议放在这个位置

main.js

Demo?中的入口文件,里面会定义?Vue?对象,并使用入口组件?App.vue

这些文件中的具体内容,就不详细分析了,?因为前面学了那么久的?Vue?知识,这些内容慢慢看,完全可以看懂

④?其他文件

文件名

描述

static?->?.gitkeep

目录内暂时没有内容,git?默认不会管理空目录,所以目录内习惯建一个空文件?.gitkeep,目的是让?git?管理

.babelrc

该文件用来配置?ES?语法适配插件?-?Babel

.editorconfig

定义代码风格,使用?IDE?对代码进行格式化时,会参照该文件

.gitignore

用来定义可以被?git?忽略的文件

.postcssrc.js

用来配置?PostCSS?插件的,该插件用来做跨浏览器样式兼容的,能自动添加特殊浏览器的私有前缀

index.html

主页,现在都是单页面应用,所以该?html?唯一的作用就是来驱动?main.js

package.json

npm?配置文件

README.md

git?管理的项目,可以通过该文件来添加项目说明

通过?Vue-CLI?构建的是一个标准的单页面应用结构,其生成的各个文件,我相信慢慢看是可以读懂的,以后我们可以按照项目的实际需求对各个配置文件进行修改,达到想要的效果

④?node_modules

用于存放项目中用到的依赖

二、单文件组件.vue文件的结构

在构建后的项目中会看到一种以.vue作为后缀的文件。

?

以下为一个vue文件的基本结构,可以简单理解为就是一个个页面。当然有些vue文件可能是可复用的组件。*.vue?文件,是一个自定义的文件类型,用类似HTML的语法描述一个Vue组件。每个.vue文件包含三种类型的顶级语言块?<template>,?<script>?和?<style>。

?

template:每个vue文件都使用template包裹静态代码部分,内部定义的是模板类内容,模板只能有一个根节点。

export?default:将当前组件导出后其它组件可以使用import引入,也可以将当前组件进行全局注册或局部注册。其中的name为组件名称,此时不需要提供el节点来指定挂载DOM。

style:样式,加上scoped表示样式只对当前组件有效,否则当前组件定义的样式,如果同时加载了多个组件,组件中恰好都有这个样式,可能会互相干扰。通过scoped避免。其余定义在不加scoped注释的style标签中的样式为全局样式,会对所有的组件都有效果。

其余静态资源:建议放在assets目录下

三、执行原理分析

main.js为整个项目的入口文件,构建了当前项目的根实例,这个根实例挂载到index.html页面的#app节点中,这个根实例加载了App.vue对应的根组件并在页面中进行渲染。由于App.vue中存在<router-view>(路由)标签,因此这块区域会发生跳转,因为默认访问的路径是/路径,所以在router中index.js配置的路由信息里面,/对应跳转的是HelloWorld这个组件,所以页面中会出现App.vue中固有内容以及HelloWorld.vue中的内容。

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2022-09-21 00:19:29  更:2022-09-21 00:22:53 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 10:21:10-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码