Vue 项目创建完成后,使用 Web Storm 打开项目,项目目录如下:

  1. build 文件夹,用来存放项目构建脚本

  2. config 中存放项目的一些基本配置信息,最常用的就是端口转发

  3. node_modules 这个目录存放的是项目的所有依赖,即 npm install 命令下载下来的文件

  4. src 这个目录下存放项目的源码,即开发者写的代码放在这里

  5. static 用来存放静态资源

  6. index.html 则是项目的首页,入口页,也是整个项目唯一的HTML页面

  7. package.json 中定义了项目的所有依赖,包括开发时依赖和发布时依赖

对于开发者来说,以后 99.99% 的工作都是在 src 中完成的,src 中的文件目录如下:

  1. assets 目录用来存放资产文件

  2. components 目录用来存放组件(一些可复用,非独立的页面),当然开发者也可以在 components 中直接创建完整页面。

  3. 推荐在 components 中存放组件,另外单独新建一个 page 文件夹,专门用来放完整页面。

  4. router 目录中,存放了路由的js文件

  5. App.vue 是一个Vue组件,也是项目的第一个Vue组件

  6. main.js相当于Java中的main方法,是整个项目的入口js

main.js 内容如下:

  1. 在main.js 中,首先导入 Vue 对象

  2. 导入 App.vue ,并且命名为 App

  3. 导入router,注意,由于router目录下路由默认文件名为 index.js ,因此可以省略

  4. 所有东西都导入成功后,创建一个Vue对象,设置要被Vue处理的节点是 '#app','#app' 指提前在index.html 文件中定义的一个div

  5. 将 router 设置到 vue 对象中,这里是一个简化的写法,完整的写法是 router:router,如果 key/value 一模一样,则可以简写。

  6. 声明一个组件 App,App 这个组件在一开始已经导入到项目中了,但是直接导入的组件无法直接使用,必须要声明。

  7. template 中定义了页面模板,即将 App 组件中的内容渲染到 '#app' 这个div 中。

因此,可以猜测,项目启动成功后,看到的页面效果定义在 App.vue 中

  1. App.vue 是一个vue组件,这个组件中包含三部分内容:1.页面模板(template);2.页面脚本(script);3.页面样式(style)

  2. 页面模板中,定义了页面的 HTML 元素,这里定义了两个,一个是一张图片,另一个则是一个 router-view

  3. 页面脚本主要用来实现当前页面数据初始化、事件处理等等操作

  4. 页面样式就是针对 template 中 HTML 元素的页面美化操作

需要额外解释的是,router-view,这个指展示路由页面的位置,可以简单理解为一个占位符,这个占位符展示的内容将根据当前具体的 URL 地址来定。具体展示的内容,要参考路由表,即 router/index.js 文件,该文件如下:

  1. 这个文件中,首先导入了Vue对象、Router对象以及 HelloWorld 组件,

  2. 创建一个Router对象,并定义路由表

  3. 这里定义的路由表,path为 / ,对应的组件为 HelloWorld,即浏览器地址为 / 时,在router-view位置显示 HelloWorld 组件

来源于: https://mp.weixin.qq.com/s/HWRYAR16vLE1XFep6_i1tA

Vue 项目结构介绍的更多相关文章

  1. 上门洗车APP --- Androidclient开发 之 项目结构介绍

    上门洗车APP --- Androidclient开发 之 项目结构介绍 前言 尽管公司项目较紧,但还是抽空给大家继续更新. o_O"~ 欢迎大家的关注,非常高兴和大家共同学习.前面给大家分 ...

  2. .NET Core实战项目之CMS 第十三章 开发篇-在MVC项目结构介绍及应用第三方UI

    作为后端开发的我来说,前端表示真心玩不转,你如果让我微调一个位置的样式的话还行,但是让我写一个很漂亮的后台的话,真心做不到,所以我一般会选择套用一些开源UI模板来进行系统UI的设计.那如何套用呢?今天 ...

  3. SpringBoot项目结构介绍

    一项目结构介绍 springboot框架本身对项目结构并没有特别的要求,但是按照最佳的项目结构可以帮助我们减少可能遇到的错误问题.结构如下: (1)应用主类SpringbootApplication应 ...

  4. vue项目搭建介绍01

    目录 vue项目搭建介绍01 vue 项目框架环境搭建: 创建项目: vue 项目创建流程: vue项目搭建介绍01 vue 项目框架环境搭建: vue 项目框架: vue django(类似)(vu ...

  5. vue项目搭建介绍02

    目录 vue项目搭建介绍02 python-pycharm设置: vue创建项目分类: vue-cli构建 自定义构建 基础的vue项目目录: vue项目搭建介绍02 python-pycharm设置 ...

  6. Vue项目结构梳理

    Vue项目结构图: 简单介绍目录结构 build目录是一些webpack的文件,配置参数什么的,一般不用动 config是vue项目的基本配置文件 node_modules是项目中安装的依赖模块 sr ...

  7. vue 目录结构介绍

    1 初始目录如下: 2 目录结构介绍 bulid:最终帆布的代码存放位置 config:配置目录,包括端口号等 node_modules:npm加载的项目依赖模块 src:z这里是我们要开发的目录,基 ...

  8. 03 vue项目结构

    上一篇已介绍根据vue-cli创建项目,本篇介绍根据vue-cli官方脚手架创建的项目的项目结构. 一.图看结构 build  [webpack配置]         webpack相关配置,都已经配 ...

  9. MVC项目创建与项目结构介绍

    一.创建MVC项目 打开VS202,点击:文件—>新建—>项目—>Web—>Asp.Net MVC 4 Web应用程序 填好项目名称.解决方案名称和文件存放位置,然后点击确定, ...

随机推荐

  1. WCF错误:由于目标计算机积极拒绝,无法连接;127.0.0.1:3456

    问题描述 最近Windows打完补丁,原来部署在本机的WCF无法连接:出现如下WCF错误:由于目标计算机积极拒绝,无法连接:127.0.0.1:3456 解决方案 检查一下本机的服务:NetTcpAc ...

  2. Python之hashlib模块的使用

    hashlib模块主要的作用: 加密保护消息安全,常用的加密算法如MD5,SHA1等. 1.查看可用的算法有哪些 #!/usr/bin/env python # -*- coding: utf-8 - ...

  3. VIDENT iSmart900自动多系统扫描工具OBDII支持ABS / SRS / EPB /传输诊断DPF再生/上油复位编码电池配置

    Vident系列中有许多多功能产品,其中最好的是Vident iSmart 900.购买视频系列后,以下是用户的一些评论 乔:因为我想它很好用.该工具很容易更新.我将公制重量单位的代码放到工具中.很容 ...

  4. C#验证数字的正则表达

    说明:@符号的作用,省去转义字符\ "^\\+?[1-9][0-9]*$" 与 @"^\+?[1-9][0-9]*$"   等效 @"^(0?[1-9 ...

  5. DelayQueue实现延迟队列

    public class Q { public static void main(String[] args) throws Exception { DelayQueue<Order> o ...

  6. Minimal Labels

    Minimal Labels 这个题需要用到拓扑排序的思维,但是这个题还有一个条件--字典序最小,因此可以用一个递增的优先队列来维护,每找到一个入度为 0 的点就把它 push 进去因而每一次判断的点 ...

  7. HDU 5793 A Boring Question ——(找规律,快速幂 + 求逆元)

    参考博客:http://www.cnblogs.com/Sunshine-tcf/p/5737627.html. 说实话,官方博客的推导公式看不懂...只能按照别人一样打表找规律了...但是打表以后其 ...

  8. TCP之连接的建立和终止

    1. 连接的建立 TCP 连接建立的三次握手 如上图所示,TCP 连接的建立会发生如下述情形: 服务器必须准备好接受外来的连接.这通常通过调用 socket.bind 和 listen 这 3 个函数 ...

  9. MAMP 环境下安装Redis扩展

    1. 下载对应版本的 php 源码,(当前使用版本是 php5.6.30 )版本号最后一位有点区别不影响链接:http://php.net/get/php-5.6.31.tar.bz2/from/a/ ...

  10. vue——父组件调用子组件

    <template> <div> child1 </div> </template> <script> export default { n ...