Vue学习笔记进阶篇之vue-cli安装及介绍


Posted in Javascript onJuly 18, 2017

介绍

Vue-cli是Vue的脚手架工具

主要作用:目录结构、本地调试、代码部署、热加载、单元测试

地址:https://github.com/vuejs/vue-cli

安装

全局安装vue-cli

npm install -g vue-cli

当然了,要想使用npm工具,就必须安装Node.js,node.js的安装方法这里就不做介绍了。

安装完成后,在终端输入以下命令, 可以查看vue的版本:vue -V

Vue学习笔记进阶篇之vue-cli安装及介绍

输入以下命令,可以查看官方提供的模板:

vue list

Vue学习笔记进阶篇之vue-cli安装及介绍

我们可以看到,vue官方提供了6个模板,我们这边主要使用webpack模板。

那么,什么是webpack呢?请看以下介绍:

WebPack可以看做是模块打包机:它做的事情是,分析你的项目结构,找到JavaScript模块以及其它的一些浏览器不能直接运行的拓展语言(Scss,TypeScript等),并将其打包为合适的格式以供浏览器使用。

创建项目

创建项目的命令:

vue init <template-name> <project-name>

template-name 为模板名称,例如上面vue list命令查到的模板的模板名称都可以使用。

project-name 就是你自己创建的项目名称了,自己随便定义,但是不能为中文。

下面,我们就用上述命令来创建一个自己的项目,首先中终端通过cd命令,进入你所需要创建项目所在的目录,然后执行以下命令:

vue init webpack my-demo1

Vue学习笔记进阶篇之vue-cli安装及介绍

在创建的过程中,会有一些项目信息和配置要自己填写,比如项目名称,项目描述,项目介绍等,后面还有几个要自己选择y/n的,我这边暂时都选择了n,因为目前我们还用不到这些东。然后根据提示,依次键入以下命令:

cd my-demo1
npm install
npm run dev

这三个命令是干嘛用的呢?

cd my-demo1:这个命令当然就是进入我们的项目目录了。

npm install:这个命令是用来安装项目的依赖项的,我们可以看到我们创建的项目中有这个文件package.json,这个文件的作用就是用来配置项目的依赖项的,而这个命令就负责安装这个配置文件里已经配置的项目,执行完成后项目目录会多个node_modules文件夹。

npm run dev:这个命令是用来运行项目的,这是个热加载的运行方式,只有修改了项目会立即更新到浏览器的。

除了上面的3个命令,还有个比较重要的命令:

npm run build

这个会生成静态文件,在根目录的dist里,里面有个index.html,这是服务器访问的路径指定到这里就可以访问我们自己的项目了。

项目目录介绍

Vue学习笔记进阶篇之vue-cli安装及介绍

项目目录结构如上图

  1. build config 这两个目录是webpack以及node服务器的配置。
  2. node_modules 这个目录是npm install命令执行后按照的依赖项所在目录。
  3. src 是用来存放项目代码的,我们的编码也都是在这个目录里进行的。
  4. .babelrc babel配置文件,把我们ES2105的代码通过它编译成ES5的。
  5. .editorconfig编辑器配置。
  6. .eslintignore 忽略语法检查的目录文件配置。
  7. .eslintrc.jseslint的配置文件。
  8. .gitignore配置Git仓库的忽略。
  9. index.html项目入口模板文件。
  10. package.json node配置文件

运行项目

上面说到我们运行项目的命令是:

nmp run dev

下面我们就执行一下,看下结果:

Vue学习笔记进阶篇之vue-cli安装及介绍

Vue学习笔记进阶篇之vue-cli安装及介绍

这个端口号我们也是可以修改的,它是在config/index.js文件下配置的。

Vue学习笔记进阶篇之vue-cli安装及介绍

只有修改这个地方,然后重新运行就好了。

另外,我们再看看这个npm run devnpm run build中的dev和build是个什么东西。

其实这个就是在package.json中配置的一个脚本:

Vue学习笔记进阶篇之vue-cli安装及介绍

如果大家熟悉nodejs的话,肯定一看就明白了,不过这些就算不明白,也不影响我们的vue的学习。

单文件组件

Vue学习笔记进阶篇之vue-cli安装及介绍

src/component目录是用来存放我们自己的组件的,可以看见,这里的组件是以.vue为后缀的单文件组件,一个文件就是一个组件。我把Hello.vue文件简化后,得到以下代码:

<template>
 <div class="hello">
  <h1>{{ msg }}</h1>
 </div>
</template>

<script>
export default {
 name: 'hello',
 data () {
  return {
   msg: 'Welcome to Your Vue.js App'
  }
 }
}
</script>

<!-- Add "scoped" attribute to limit CSS to this component only -->
<style scoped>
h1, h2 {
 font-weight: normal;
}
</style>

这里面包含了,模板-即<template>标签的内容,js-即<script>标签的内容,和样式-即<style>标签的内容,在<style>里有个scoped属性,这个的意思就是这个样式仅在当前组件内有效果,如果没有这个属性,则这个样式就是全局的,会影响到其他组件的样式,所以这个一定要根据情况而定。

另外,如果想在我们的项目中引用其他的js, 或css 我们可以在根目录的index.html文件中添加,这样全局都可以使用的。

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

Javascript 相关文章推荐
Code: write(s,d) 输出连续字符串
Aug 19 Javascript
js 性能优化之快速响应的用户界面
Feb 15 Javascript
AngularJS改变元素显示状态
Apr 20 Javascript
webpack多入口文件页面打包配置详解
Jan 09 Javascript
JS声明对象时属性名加引号与不加引号的问题及解决方法
Feb 16 Javascript
vue2.0路由切换后页面滚动位置不变BUG的解决方法
Mar 14 Javascript
jQuery中复合选择器简单用法示例
Mar 31 jQuery
探秘vue-rx 2.0(推荐)
Sep 21 Javascript
解决vuejs 使用value in list 循环遍历数组出现警告的问题
Sep 26 Javascript
仿iPhone通讯录制作小程序自定义选择组件的实现
May 23 Javascript
基于layui的下拉列表的数据回显方法
Sep 24 Javascript
Bootstrap FileInput实现图片上传功能
Jan 28 Javascript
深入解析Vue 组件命名那些事
Jul 18 #Javascript
js实现本地图片文件拖拽效果
Jul 18 #Javascript
详解使用angularjs的ng-options时如何设置默认值(初始值)
Jul 18 #Javascript
js实现移动端导航点击自动滑动效果
Jul 18 #Javascript
JS实现点击Radio动态更新table数据
Jul 18 #Javascript
Angularjs的启动过程分析
Jul 18 #Javascript
关于javascript sort()排序你可能忽略的一点理解
Jul 18 #Javascript
You might like
JS实现php的伪分页
2008/05/25 PHP
PHP7新增运算符用法实例分析
2016/09/26 PHP
PHP基于PDO调用sqlserver存储过程通用方法【基于Yii框架】
2017/10/07 PHP
CMSPRESS 10行代码搞定 PHP无限级分类2
2018/03/30 PHP
PHP堆栈调试操作简单示例
2018/06/15 PHP
PHP实现图片防盗链破解操作示例【解决图片防盗链问题/反向代理】
2020/05/29 PHP
JavaScript判断文件上传类型的方法
2014/09/02 Javascript
微信小程序开发之相册选择和拍照详解及实例代码
2017/02/22 Javascript
js中toString()和String()区别详解
2017/03/23 Javascript
vue如何使用 Slot 分发内容实例详解
2017/09/05 Javascript
解决Mac下安装nmp的淘宝镜像失败问题
2018/05/16 Javascript
浅谈Vue数据响应思路之数组
2018/11/06 Javascript
转换layUI的数据表格中的日期格式方法
2019/09/19 Javascript
Vuex的实战使用详解
2019/10/31 Javascript
selenium+java中用js来完成日期的修改
2019/10/31 Javascript
javascript canvas实现简易时钟例子
2020/09/05 Javascript
windows 10下安装搭建django1.10.3和Apache2.4的方法
2017/04/05 Python
python利用smtplib实现QQ邮箱发送邮件
2020/05/20 Python
numpy.meshgrid()理解(小结)
2019/08/01 Python
QML使用Python的函数过程解析
2019/09/26 Python
pytorch1.0中torch.nn.Conv2d用法详解
2020/01/10 Python
python实现堆排序的实例讲解
2020/02/21 Python
DjangoWeb使用Datatable进行后端分页的实现
2020/05/18 Python
用Python 爬取猫眼电影数据分析《无名之辈》
2020/07/24 Python
H5最强接口之canvas实现动态图形功能
2019/05/31 HTML / CSS
Under Armour瑞典官方网站:美国高端运动科技品牌
2018/11/21 全球购物
AURALog面试题软件测试方面
2013/10/22 面试题
社区志愿者活动总结
2014/06/26 职场文书
2015年大班保育员工作总结
2015/05/18 职场文书
生日宴会家属答谢词
2015/09/29 职场文书
2016年“我们的节日·中秋节”活动总结
2016/04/05 职场文书
靠谱准确的求职信
2019/04/02 职场文书
创业计划书之家教中心
2019/09/25 职场文书
如何在C++中调用Python
2021/05/21 Python
win10蓝屏0xc0000001安全模式进不了怎么办?win10出现0xc0000001的解决方法
2022/08/05 数码科技
Java实现贪吃蛇游戏的示例代码
2022/09/23 Java/Android