您的位置:首页 > Web前端 > Vue.js

VUE之搭建脚手架

2018-01-26 20:32 246 查看
 原文转自https://www.geek-share.com/detail/2697693332.html

目录(?)[-]

  1. 1 安装之前需要检查是否已经安装NodeJS的环境
  2. [ol]
  3. 安装文件下载地址httpsnodejsorgen
  4. 下载得到压缩文件node-v694-c64msi
  5. 双击进行安装
  6. 查看安装目录
  7. nodejs就安装完成
  • 2安装vue-cli
  • 3基本使用
  • 4模板
  • 推荐的工具包
  • [/ol]  

    使用 Vue.js 开发大型应用时,我们需要考虑代码目录结构、项目构建和部署、热加载、代码单元测试等事情。如果每个项目都要手动完成这些工作,那无疑效率是低下的,所以通常我们会使用一些脚手架工具来帮助完成这些事情。在 Vue.js 生态中我们可以使用 vue-cli 脚手架工具来快速构建项目。

    (1) 安装之前需要检查是否已经安装NodeJS的环境

    可以使用node -v检查,且需要保证安装4.0版本以上的nodejs环境

    执行命令node -v 安装的版本为 v6.9.4

    如果没有安装则执行下面的步骤:node.js安装过程如下: node.js相关的网站http://www.cnodejs.org/


     
    • 下载得到压缩文件node-v6.9.4-c64.msi
    得到安装包:

     

    • 双击进行安装
    默认的安装路径是C:\Program Files\nodejs
     
    • 查看安装目录

    可以发现node.js自带了npm,我们可以直接使用npm安装其他的相关环境即可。 安装命令为 : npm install 组件名称 默认情况下,组件都是安装在C:\Program Files\nodejs\node_modules文件夹下的 但是通常情况下,我们需要安装一个全局的组件,才能够使用 这时安装命令为:npm install 组件名称 -g

    • node.js就安装完成

    (2)安装vue-cli

    vue-cli 是用 node 编写的命令行工具,我们需要进行全局安装。打开命令行工具,输入指令:

    $ npm install -g vue-cli

    也可以安装一个npm的淘宝镜像,这样安装快一些

    安装命令如下:

    npm install -g cnpm --registry=https://registry.npm.taobao.org

    安装完成以后,执行如下命令:

    $ vue --version

    得到安装的vue版本是2.8.1

    (3)基本使用

    初始化项目 定位到创建项目的目录下 执行命令:vue init 模板类型 项目名称 模板类型可以使用vue list指令查看 项目名称可以自己定义vue

    生成项目模板的命令格式为


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

    <template-name>:模板名,比如 webpack, simple, browserify

    <project-name>: 本地文件夹名称

    我们可以使用 vue-cli 来快速生成一个基于 Webpack 构建的项目。打开命令行工具,输入如下命令:

    $ vue init webpack my-project

    所有模板默认安装的是 Vue 2.x 版本,如果需要安装 1.x 版本,需要输入如下指令:$ vue init webpack#1.0 my-project

    有一系列交互问题,同意按 y,不同意按 n。


    初始化项目之后,查看项目目录如下:


    安装命令行给出的提示,我们依次输入如下指令:

    $ cd my-project

    $ npm install

    安装过程如下:


    安装完毕以后会在对应的目录下生成如下文件,多了一个node-module文件,里面是依赖的node工具包:

    下面对上图目录做一个简要的说明


    现在启动项目,输入如下命令:

    $ npm run dev
    默认监听的是 8080 端口

    甚至连 Apche服务器都不需要自己启动,在浏览器中输入 http://localhost:8080,生成的页面如下:


    接下来我们打开 src/components/Hello.vue,把数据中的 msg 改成 “你好,世界!”


    <script>
    export default {
      data () {
        return {
          // note: changing this line won‘t causes changes
          // with hot-reload because the reloaded component
          // preserves its current state and we are modifying
          // its initial state.
          msg: ‘你好,世界!‘
        }
      }
    }
    </script>


    重新刷新页面:

    (4)模板

    这里对两个命令做进一步拓展介绍:

    4-1、init

    init 命令用来基于指定模板生成项目结构。前面提到过的,template-name 为模板名,project-name 为要生成的目录名

    4-2、list

    list 命令用于列出所有可用的模板,通过查询 https://api.github.com/users/vuejs-templates/repos 这个API 接口可以得到所有列表。 

    命令行输入指令:

    $ vue list

    前面提到,在执行 init 命令时可以指定模板的名字。在默认情况下,vue-cli 会根据所传入的模板名字去 github 中查找模板。

    vue-cli 的模板分为 官方模板、自定义模板、本地模板

    (1)、官方模板

    上图中就提供了 5种 官方模板:

    browserify  --  拥有高级功能的 Browserify + vueify 用于 正式开发

    browserify-simple  --  拥有基础功能的 Browserify + vueify 用于 快速开发

    simple  --  单个 HTML,用于开发最简单的 Vue.js 应用

    webpack  --  拥有高级功能的 Webpack + vue-loader 用于正式开发

    webpack-simple  --  拥有基础功能的 Webpack + vue-loader 用于快速开发

    在这里特别提一下 webpack,前面在安装 webpack 模板时,有一个选择项,是否使用 ESLint 来规范你的代码

    ESLint 对于平时不太注意代码缩进的朋友可能是一个噩耗,我们简单演示一下,打开 src 下的 App.vue,把代码稍作修改

    <template>
      <div id="app">
    <h2>2017年来啦!</h2>
    <strong>{{msg}}</strong>
      </div>
    </template>

    <script>
    export default {
      data(){
    return {
    msg:‘好好学习 Vue.js!‘
    }
      }
    }
    </script>

    刷新页面,提示了各种代码缩进、空格 之类的错误

    (2)、自定义模板
    当官方模板不能满足需求时,我们可以 fork 官方模板按照自己的需求修改后,通过 vue-cli 命令生成基于自己模板的项目结构:
    $ vue init username/repo my-project
    (3)、本地模板

    除了从 github 下载模板外,我们还可以从本地加载模板:
    $ vue init ~/fs/path/to-custom-template my-project

    5、推荐的工具包

    vue-cli 内部使用了很多第三方 npm 包来帮助自己实现一些基础功能,比如下面这些
    5-1、commander
    commander 是一个命令行接口的解决方案,它提供了一些接口方便我们对命令行的命令做解析。
    仓库地址:https://github.com/tj/commander.js

    5-2、download-git-repo

    download-git-repo 用来将相应的 git 库(Github、GitLab、Bitbucket)下载到指定的本地文件夹。
    仓库地址:https://github.com/flipxfx/download-git-repo

    内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
    标签: