详解使用vue-cli脚手架初始化Vue项目下的项目结构


Posted in Javascript onMarch 08, 2018

vue-cli是Vue 提供的一个官方命令行工具,可用于快速搭建大型单页应用。该工具提供开箱即用的构建工具配置,带来现代化的前端开发流程。只需几分钟即可创建并启动一个带热重载、保存时静态检查以及可用于生产环境的构建配置的项目。

使用vue-cli有以下几大优势:

  1. vue-cli是一套成熟的Vue项目架构设计,会跟着Vue版本的更迭而更新 
  2. vue-cli提供了一套本地的热加载的测试服务器 
  3. vue-cli集成了一套打包上线的方案,可使用webpack或Browserify等构建工具

安装

下面来安装vue-cli

# 必须全局安装vue-cli,否则无法使用vue命令
# 安装完成之后使用vue -V检查vue-cli是否安装成功及版本信息

$ npm install -g vue-cli
$ vue -V

创建项目

接下来使用vue-cli创建一个新的Vue项目

# 项目创建完之后需要执行npm install安装依赖

$ vue init webpack vuedemo
$ npm install

创建的vuedemo文件夹所包含的文件如下:

详解使用vue-cli脚手架初始化Vue项目下的项目结构

[index.html]

index.html和其他html文件一样,但一般只定义一个空的根节点,在main.js里面定义的实例将挂载在根节点下,内容都通过vue组件来填充,由于所有的挂载元素会被Vue生成的DOM替换,因此不推荐直接挂载实例到 <html> 或者 <body> 上。

详解使用vue-cli脚手架初始化Vue项目下的项目结构

[main.js]

是Vue应用的入口文件,用来创建一个新的Vue实例,并将这个实例挂载在根节点下,同时也可以用来引入Vue插件

详解使用vue-cli脚手架初始化Vue项目下的项目结构

‘el'选项:提供一个在页面上已存在的DOM元素作为Vue实例的挂载目标,这里就是index.html中id为‘app'的节点

‘router'选项:将router实例注入到Vue根实例中,使它的每个子组件都可以访问$router (router实例)和$route (当前激活的路由信息对象)

‘template'选项:以一个字符串模板作为 Vue 实例的标识使用

‘components':根组件

[App.vue]

项目的根组件,可以包含其他的子组件,从而组成组件树

详解使用vue-cli脚手架初始化Vue项目下的项目结构

<template></template>只能包含一个子节点,也就是说顶层的div只能有一个(如图,id为‘app'的div元素没有兄弟节点)

<script></script>通常用es6来写,用export default导出

<style></style>中的样式默认是影响全局的,如需定义作用域只在该组件下起作用,需在标签上加scoped,<style scoped></style>

[router/index.js]

路由配置文件,作用是将组件映射到路由,方便知道在哪里渲染它们

详解使用vue-cli脚手架初始化Vue项目下的项目结构 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript css styleFloat和cssFloat
Mar 15 Javascript
基于JQuery的6个Tab选项卡插件
Sep 03 Javascript
jQuery学习笔记之DOM对象和jQuery对象
Dec 22 Javascript
js实现图片放大缩小功能后进行复杂排序的方法
Nov 08 Javascript
js给页面加style无效果的解决方法
Jan 20 Javascript
css+js实现部分区域高亮可编辑遮罩层
Mar 04 Javascript
js实现的星星评分功能函数
Dec 09 Javascript
vue-router 权限控制的示例代码
Sep 21 Javascript
vue中实现在外部调用methods的方法(推荐)
Feb 08 Javascript
jQuery实现表格隔行换色
Sep 01 jQuery
JavaScript canvas绘制折线图
Feb 18 Javascript
序列化模块json代码实例详解
Mar 03 Javascript
改变vue请求过来的数据中的某一项值的方法(详解)
Mar 08 #Javascript
JavaScript满天星导航栏实现方法
Mar 08 #Javascript
vue.js的computed,filter,get,set的用法及区别详解
Mar 08 #Javascript
详解从买域名到使用pm2部署node.js项目全过程
Mar 07 #Javascript
layui select动态添加option的实例
Mar 07 #Javascript
layui表格checkbox选择全选样式及功能的实例
Mar 07 #Javascript
Bootstrap实现可折叠分组侧边导航菜单
Mar 07 #Javascript
You might like
PHP 数字左侧自动补0
2008/03/31 PHP
PHP删除目录及目录下所有文件的方法详解
2013/06/06 PHP
php统计文章排行示例
2014/03/04 PHP
PHP单例模式模拟Java Bean实现方法示例
2018/12/07 PHP
js 动态添加标签(新增一行,其实很简单,就是几个函数的应用)
2009/03/26 Javascript
js中将字符串转换成json的三种方式
2011/01/12 Javascript
JS两种定义方式的区别、内部原理
2013/11/21 Javascript
JavaScript面向对象编程入门教程
2014/04/16 Javascript
用javascript读取xml文件读取节点数据
2014/08/12 Javascript
jQuery中:first选择器用法实例
2014/12/30 Javascript
JS基于面向对象实现的拖拽库实例
2015/09/24 Javascript
js简单设置与使用cookie的方法
2016/01/22 Javascript
AngularJS基础 ng-mouseenter 指令示例代码
2016/08/02 Javascript
图文详解JavaScript的原型对象及原型链
2016/08/02 Javascript
Jquery针对tr td的一些实用操作方法(必看篇)
2016/10/05 Javascript
JS鼠标3次点击事件实现代码及扩展思路
2017/09/12 Javascript
前端把html表格生成为excel表格的实例
2017/09/19 Javascript
使用vue实现简单键盘的示例(支持移动端和pc端)
2017/12/25 Javascript
AngularJS实现的根据数量与单价计算总价功能示例
2017/12/26 Javascript
JavaScript实现滚动加载更多
2020/12/27 Javascript
[00:35]2016完美“圣”典风云人物:冷冷宣传片
2016/12/08 DOTA
Python下的twisted框架入门指引
2015/04/15 Python
Python reduce()函数的用法小结
2017/11/15 Python
Python实现提取XML内容并保存到Excel中的方法
2018/09/01 Python
在 Jupyter 中重新导入特定的 Python 文件(场景分析)
2019/10/27 Python
Pytorch释放显存占用方式
2020/01/13 Python
Python数据可视化实现多种图例代码详解
2020/07/14 Python
解决c++调用python中文乱码问题
2020/07/29 Python
美国校园市场:OCM
2017/06/08 全球购物
寒假思想汇报
2014/01/10 职场文书
海飞丝的广告词
2014/03/20 职场文书
《晚上的太阳》教学反思
2014/04/23 职场文书
中层干部培训方案
2014/06/16 职场文书
内科护士节演讲稿
2014/09/11 职场文书
开展党的群众路线教育实践活动情况汇报
2014/11/05 职场文书
北京天坛导游词
2015/02/12 职场文书