vue-cli脚手架的使用

  • 使用vue-cli可以快速搭建vue的开发环境,和webpack的配置
  • 安装vue脚手架: npm install -g@vue/cli
  • 上面安装的是vue cli3的版本,如果需要想按照vue cli2的方式初始化项目是不可以的,我们必须要拉取2.x的模板,需要安装全局的桥接工具(官方查看)
  • Vue CLI2 初始化项目
    • vue init webpack my-project
  • Vue CLI3 初始化项目
    • vue create my-project

CLI 2 的使用

  1.  初始化项目:web init webpack mytest(根据这个创建项目文件名),初始化出现配置选项:
    //项目名称
    Project name ...
    //作者的信息,会默认从git中读取信息
    Project description ...
    Author ...
    //vue创建的选项 1.runtime-compiler 2.runtime-only
    vue build ...(一般选runtime-only)
    //是否安装vue-router
    Install vue-router? ..
    //是否使用ESLint检测代码规范
    use ESLint to link your code
    //是否写单元测试 (一般不使用)
    Set up unit tests
    //是否使用Nightwatch来进行e2e测试 (2代表to e to e 点对点)
    Setup e2e test with Nightwatch?
    //使用npm或者yarn包管理工具
    use npm
    use yarn
  2. Runtime-CompilerRuntime-only的区别

  • runtime-compiler(v1)(运行过程)): template -> ast -> render -> vdom -> UI
  • runtime-only(v2 1.性能更高, 2.代码量更少):render -> vdom -> UI
  • 那.vue文件中的template是由谁处理的呢? 是由vue-template-compiler这个开发时 工具依赖来处理的,他将.vue文件解析成了render函数,解析之后,是没有tamplate这个 东西的
  1. 总结:
  • 如果在开发中,依然使用template,就需要选择Runtime-Compiler
  • 如果在开发中,使用的是.vue文件夹开发,那么可以选择Runtime-Only
  1. render函数的使用
  •   new Vue({
    el:'#app',
    render:(createElement) =>{
    //使用方式一:
    return createElement('标签','相关数据对象(可以不传)',['内容数组'])
    //1.1render函数的基本使用
    return createElement('div',{class:'box'},['xiaohuang'])
    //1.2嵌套render函数
    return createElement('div',{class:'box'},['小黄',createElement('h2',['标题啊'])])
    }
    })
  •   `Runtime-Compiler`和`Runtime-only`在main.js中的不同使用:
    
      1.`Runtime-Compiler`中
    const cpn =Vue.component('cpn',{
    template:'<div>我是cpn组件 </div>',
    data(){
    return{ }
    }
    }) 2.`Runtime-only`中
    new Vue({
    el:'#app'
    render:(createElement)=>{
    //使用方法二:传入一个组件对象
    return createElement(cpn)
    }
    })

CLI 3的使用

  1. 初始化项目:vue create my-project
  2.  //选择一个配置方式
    please pick a perset (一般选最后一个Manually select features(手动选择特性) )
    //选择对于你的工程所需要的特性 (用空格选择)
    check the features needed for your project
    //对应的配置文件单独生成还是放在package.json里
    where do you prefer placing config for babel
    //要不要把刚才自己选择的配置保存下来
    save this as a preset for future projects?
  3. pubilc文件相当于CLI2中的static目录
  4. 配置都去哪里了,可以启动配置服务器 vue ui 查看(全局命令)

vue-cli2和cli3的使用和区别的更多相关文章

  1. Vue与React两个框架的区别对比

    简单介绍 React--Facebook创建的JavaScript UI框架.它支撑着包括Instagram在内的大多数Facebook网站.React与当时流行的jQuery,Backbone.js ...

  2. vue中extend/component/mixins/extends的区别

    vue中extend/component/mixins/extends的区别 教你写一个vue toast弹窗组件 Vue.extend构造器的延伸

  3. vue路由传值params和query的区别

    vue路由传值params和query的区别1.query传参和接收参数传参: this.$router.push({ path:'/xxx' query:{ id:id } })接收参数: this ...

  4. vue/cli2.0优化

    vue/cli2.0 脚手架 在项目写完了之后, 运行npm run build --report可以看出这个项目的资源占比情况.可以看出整个项目哪一个资源在整个项目占比最大.它会自动打开一个可视化的 ...

  5. vue中methods、computed、watch区别

    vue中methods.computed.watch区别methods:事件调用的钩子 computed:{ // 计算属性是根据他依赖的值计算的,当依赖值发生变化,其跟着改变 // 计算属性是依赖缓 ...

  6. vue中的$router 和 $route的区别

    最近在学习vue的单页面应用开发,需要vue全家桶,其中用到了VueRouter,在路由的设置和跳转中遇到了两个对象$router 和 $route ,有些傻傻分不清,后来自己结合网上的博客和自己本地 ...

  7. 【面试题】Vue中的$router 和 $route的区别

    Vue中的$router 和 $route的区别 点击视频讲解更加详细 this.$route:当前激活的路由的信息对象.每个对象都是局部的,可以获取当前路由的 path, name, params, ...

  8. Vue CLI3和Vue CLI2环境搭建

    关于 Vue CLI 旧版本的安装以及创建项目 1.搭建 vue 的开发环境 ,安装 vue 的脚手架工具 官方命令行工具 npm install --global vue-cli / cnpm in ...

  9. Vue 中 export及export default的区别

    相信很多人都在vue使用过export.export default.import,然而它们到底有什么区别呢? 在ES6中,export与export default均可用于导出常量.函数.文件.模块 ...

随机推荐

  1. 如何在JS代码中消除for循环

    参考博客:https://www.cnblogs.com/momo798/p/10077600.html

  2. 搭建rsync+inotify实现实时备份

    一.环境搭建说明 系统环境 CentOS7.5 备份节点 主机名:backup01 IP地址:172.16.2.41 数据节点 主机名:nfs-master IP地址:172.16.2.31 二.在备 ...

  3. Django序列化时间报错

    一.前言 当利用models模块从数据库获取数据时,当获的取数据序列化时,如果获取的数据中有关于时间类型的字段,则会报错,错误如下: TypeError: datetime.datetime(2018 ...

  4. 大数据项目2(Java8聚合操作)

    前言:为很好的理解这些方法,你需要熟悉java8特性Lambda和方法引用的使用 一:简介 我们用集合的目的,往往不是简单的仅仅把数据保存哪里.而是要检索(遍历)或者去计算或统计....操作集合里面的 ...

  5. c++-面向对象:类和对象

    类和对象 #define _CRT_SECURE_NO_WARNINGS #include <iostream> #include <string.h> using names ...

  6. Ubuntu Server 上在安装Nginx时执行./confgiure后提示:C compiler cc is not found

    场景 Ubuntu Server 16.04 LTS上怎样安装下载安装Nginx并启动: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/detai ...

  7. com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details

    1.错误显示 com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details log提示:Generate Si ...

  8. 常见SQL编写和优化

    常见的SQL优化方式 对查询进行优化,应尽量避免全表扫描,首先应考虑在where及order by 涉及的列上建立索引. 应尽量避免在 where 子句中对字段进行null 值判断,否则将导致引擎放弃 ...

  9. Electron中使用sql.js操作SQLite数据库

    推荐sql.js——一款纯js的sqlite工具. 一.关于sql.js sql.js(https://github.com/kripken/sql.js)通过使用Emscripten编译SQLite ...

  10. android6.0系统Healthd深入分析

    概述 Healthd是android4.4之后提出来的一种中介模型,该模型向下监听来自底层的电池事件,向上传递电池数据信息给Framework层的BatteryService用以计算电池电量相关状态信 ...