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

在如今前端技术飞速发展的时代,angular.js、vue.js 和 react.js 作为前端框架已经呈现出了三国鼎立的局面。作为国人若你不知道 vue,小生表示可以理解,如果作为中国的前端猿不知道 vue,小生表示很遗憾。而 vue-cli 作为官方推荐的快速构建 vue 项目的脚手架,你应该学会使用,本文将介绍如何使用 vue-cli。

在使用vue-cli前,希望你具备以下条件:

  • 扎实的 JavaScript / HTML / CSS 基本功

  • 通读官方教程 (guide) 的基础篇

这里我就不再赘述什么是 Vue.js 了,请需要了解的同学前往:

查看相关资源信息。

安装

  • 检查是否安装 node.js, 如果没有请根据您的系统安装

    node -v
    v8.00
  • 全局安装 vue-cli

    npm install -g vue-cli
  • vue-cli 的命令行

      命令:
    
      init        从模板中创建项目
    list 列出所有的官方模板
    build 构建项目
    help [cmd] 展示[cmd]命令的帮助信息
  • 使用vue list 查看所有模板

    可用的官方模板:
    
    ★  browserify - 功能齐全的 Browserify + vueify 配置, 具备 hot-reload, linting & unit testing。
    ★ browserify-simple - 简单的 Browserify + vueify 配置,便于快速构建。
    ★ pwa - 基于 webpack 的 PWA 模板。
    ★ simple - 基于单html文件的最简单的vue配置模板。
    ★ webpack - 功能齐全的 Webpack + vue-loader 配置 hot reload, linting, testing & css extraction。
    ★ webpack-simple - 简单的 Webpack + vue-loader 配置,便于快速构建。
  • 使用vue init创建基于webpack模板的项目(目前使用最多)

    vue init webpack <项目名>
    
    * Project name (demo) 项目名称,不能大写和中文,直接回车,使用默认名称
    * Project description (A Vue.js project) 项目描述,也可直接点击回车,使用默认值
    * Author 项目作者,使用默认名字
    * Install vue-router? (Y/n) 是否安装vue-router,这是官方的路由,大多数情况下都使用
    * Use ESLint to lint your code? (Y/n) 是否使用ESLint管理代码,ESLint是个代码风格管理工具,是用来统一代码风格的,并不会影响整体的运行,这也是为了团队开发,一般项目中都会使用
    * Pick an ESLint preset 选择一个ESLint预设, 编写vue项目时的代码风格, 选择默认Standard即可
    * Setup unit tests with Karma + Mocha? (Y/n) 是否安装单元测试,选择安装
    * Setup e2e tests with Nightwatch? (Y/n) 是否安装e2e测试 ,选择安装

项目结构

  • cd 到 demo 目录下,发现如下的项目结构

  • 文件说明

    -- build                     目录放的是构建脚本(包括构建时要用到的webpack 配置)
    -- config 配置脚本(vue项目启动时需要的配置,开发模式和生产模式)
    -- node_modules 通过npm install 安装的项目依赖包
    -- src 项目源码目录
    -- assets 项目模块资源文件包括:图片,css(会被webpack处理)
    -- components 项目相关的vue组件,便于重用
    -- router 项目的路由定义
    App.vue 页面入口文件
    main.js 项目的入口文件,挂在vue实例,加载路由,中间件等公共组件
    -- static 页面需要引入的外部的纯静态资源(会直接拷贝到dist/static/里面)
    -- test 项目测试
    -- e2e 模拟用户行为的测试
    -- unit 单元测试
    .babelrc ES6语法编译配置,把我们ES2105的代码通过它编译成ES5的
    .editorconfig 编辑器配置,定义代码格式
    .eslintignore 忽略语法检查的目录文件配置
    .eslintrc.js eslint的配置文件
    .gitignore 配置Git仓库的忽略项
    .postcssrc.js postcss的配置
    index.html 项目入口模板文件
    package.json 项目基本信息,运行脚本和相关依赖
    README.md 项目介绍及开发指南

项目构建

  • 首先安装依赖

    npm install
  • 开发模式

    npm run dev

服务开启成功后,浏览器打开:http://localhost:8080(默认服务启动的是8080端口,如果你想另起端口,可以修改 config/index.js 文件的 port)

  • 生产环境

首先需要打包 npm run build ,打包完成后会在项目下生成 dist 文件夹,我们只需要将此文件夹部署到web服务器上即可。

小结

如果您坚持到了这一步,恭喜您,您至少没有放弃。整个项目虽然很简单地一气呵成了,但是其中涉及到的技术点还有待我们去探索,革命尚未成功,同志仍需努力。

vue-cli “从入门到放弃”的更多相关文章

  1. 学习 Vue ,从入门到放弃

    最近项目刚完成,手上工作稍微轻松些,准备储备下技术,为未来挑战做好准备. 之前项目用的较多的是angulajs,不过版本较老,还停留在1.5x系,虽然结合了webpack,es2015等前沿技术,但理 ...

  2. Vue的从入门到放弃

    此贴仅记录vue学习路程中遇见的大大小小,形形色色的问题 1.  vue自动打开浏览器配置: 当使用vue 脚手架搭建项目后启动npm run dev,会出现 但是不会自动打开浏览器的,这时候去con ...

  3. 《vue.js2.0从入门到放弃》学习之路

    原文地址: Vue.js2.0从入门到放弃---入门实例(一):http://blog.csdn.net/u013182762/article/details/53021374 Vue.js2.0从入 ...

  4. 一天带你入门到放弃vue.js(三)

    自定义指令 在上面学习了自定义组件接下来看一下自定义指令 自己新建的标签赋予特殊功能的是组件,而指定是在标签上使用类似于属性,以v-name开头,v-on,v-if...是系统指令! v-是表示这是v ...

  5. 一天带你入门到放弃vue.js(二)

    接下来我们继续学习一天带你入门到放弃系列vue.js(二),如有问题请留言讨论! v-if index.html <div id="app"> <p v-if=& ...

  6. 一天带你入门到放弃vue.js(一)

    写在前面的话! 每个新的框架入手都会进行一些列的扯犊子!这里不多说那么多!简简单单说一下vue吧! Vue.js是目前三大框架(angular,vue,react)之一,是渐进式js框架,据说是摒弃了 ...

  7. webpack 配置 Vue 多页应用 —— 从入门到放弃

    webpack 配置 Vue 多页应用 -- 从入门到放弃 一直以来,前端享有无需配置,一个浏览器足矣的优势,直到一大堆构建工具的出现,其中 webpack 就是其中最复杂的一个,因此出现了一个新兴职 ...

  8. VUE从入门到放弃(项目全流程)————VUE

    VUE从入门到放弃(第一天)--整体流程 先想想一个项目,vue项目是从什么到什么,然后再什么的?那是什么呢? 搭建 ( vue-cli) 代码内容 运行 封装 成品 一.搭建(脚手架vue-cli) ...

  9. Vue.js的从入门到放弃进击录(二)

    哇塞,昨晚更新的篇(一)这么多阅读量,看来入坑的人越来越多啦~熬了一个礼拜夜,今天终于生病惹~国庆要肥家咯·所以把篇(二)也更完.希望各位入坑的小伙伴能少跳几个坑呗.如果有什么不对的地方也欢迎讨论指正 ...

  10. [精品书单] C#/.NET 学习之路——从入门到放弃

    C#/.NET 学习之路--从入门到放弃 此系列只包含 C#/CLR 学习,不包含应用框架(ASP.NET , WPF , WCF 等)及架构设计学习书籍和资料. C# 入门 <C# 本质论&g ...

随机推荐

  1. Mysql_常规操作

    001.数据库 全局操作 # 连接数据库: # mysql -h主机地址 -u用户名 -p(登陆用户密码)     ​# 修改用户密码 mysqladmin # mysqladmin -u root ...

  2. 记一次关于JDBCUtils工具类的编写

    jdbc.properties数据库配置的属性文件内容如下 jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://localhost/xxxx ...

  3. wireshark的过滤命令

    1.ip.addr == 192.168.1.1 这种是目标地址和源地址都是 后面指定的IP

  4. cesium初探之加载三维模型

    项目需要用到二三维地图切换,本来准备研究ArcGIS js for Web 3d,但考虑到版权的问题,决定试着用cesium来做,于是花了2天时间抱着试试看的心态把cesium从环境配置到加载三维模型 ...

  5. mac搭建本地服务器

    目录 基础部分 1234 启动服务器添加自定义文档到本地服务器查看自定义效果手机/其他电脑 访问本机服务器 说明:本地开发需要搭建本地服务器进行页面的调试,mac系统自带apache服务,本篇日志是针 ...

  6. python-django-fastdfs+Nginx的安装和配置_20191122

    python-django-fastdfs+Nginx的安装和配置 FastDFS文件系统 FastDFS文件系统简介: 是c语言编写的,是淘宝的架构师写的,存储淘宝的图片,后来开源了, fastDF ...

  7. python初认函数

    今日所得 函数基本使用 函数的参数 函数的返回值 # 函数内要想返回给调用者值 必须用关键字return """ 不写return 只写return 写return No ...

  8. spring事务管理(xml配置)与spring自带连接数据库JdbcTemplate

    什么是事务,很通俗的话来说就是,我们日常生活中总会出现在银行转账的业务,加入A向B转账100元,此时A的账户中应该减少100元,B的账户中增加100元,但是如果在A转完账B还没有接受的时候,服务器出现 ...

  9. [LC] 246. Strobogrammatic Number

    A strobogrammatic number is a number that looks the same when rotated 180 degrees (looked at upside ...

  10. MIAME|Highwire press

    生物信息学 GEO可存储基因芯片数据,支持MIAME.MIAME是minimum information about a microarry experiment.这之中存储研究原始数据+标准化之后的 ...