zoukankan      html  css  js  c++  java
  • 020 Vue 脚手架CLI的使用

    [A] 脚手架CLI简介

      1. 大型项目开发,一般都会使用到vue CLI来简化代码书写量,这是因为:

                    1. vue的形象项目开发时,我们需要考虑代码目录结构,项目结构和部署,预加载,代码单元测试等等

                    2. 如果所有代码都要手动书写,那工作量太大,此时需要结束vue CLI降低代码书写量

      2. CLI俗称脚手架

                    1. CLI时Command-Line Interface,中文名为命令行界面,俗称脚手架

                    2. Vue CLI是一个官方发布的vue.js的项目脚手架

                    3. 使用vue-cli可以快速搭建Vue项目开发环境以及对应的webpack配置

      3. CLI脚手架使用前提

                    1. 安装Nodejs和npm

                    2. 其中,nodejs环境要求8.9以上版本

      4. CLI2的安装 

        1. 全局安装即可

                        npm install vue-cli -g

      5. CLI3安装:

                    1. 全局安装即可

                        npm install @vue/cli -g

                    2.上面时脚手架3的安装,若还想使用CLI2,则还需安装桥接工具

                        npm install @vue/cli-init

    [B] 脚手架CLI2的使用过程

      1. 项目初始化

        运行指令:

          vue init webpack my_porject_a

            // 会根据这个项目名称创建一个文件夹,所有创建的文件都放在这个文件夹下

            // 文件名自定义,但不能有大写字母

            // 在安装过程中会要求填写信息

          Project name> my_cli_a

                                // 填写项目名称,不能有大写字母

          Project description> a vue.js project

                                // 作者的信息,默认会从git中读取

          Author> Carrey 137xxxx891@qq.com

                                // 作者名和邮箱,默认从git读取

          Vue build> runtime + compiler

                                // 后面详解

          Install vue-rounter> No

                                // 不安装路由,后面讲

          Use ESLint to lint your code> No

                                // 不使用语法检查限制

          Set up unit tests> No

                                // 不适用的单元测试

          Setup e2e tests with Nightwatch>No

                                // end to end 测试,不需要

          Should we run `npm install` fro your...

                                // 选择npm

      2. CLI2项目初始化之后会生成一系列的文件

                            Carrey_a---------------------项目名

                                -build-------------------用来使用webpack打包时使用的build依赖

                                -config------------------用来做整个项目配置文件目录

                                -node_modules------------用来管理项目中使用的依赖,即需要使用的包

                                -src---------------------用来书写vue源代码

                                    -assets--------------用来存放静态文件[重点]

                                    -components----------用来书写vue组件[重点]

                                    -router(可能没有)-----用来配置项目中路由[重点]

                                    --App.vue------------项目中根组件[重点]

                                    --main.js------------项目的主入口[重点]

                                -static------------------其他静态

                                --.babelrc---------------将ES6转换为ES5运行

                                --.editorconfig----------项目编辑配置

                                --.gitignore-------------git版本控制忽略文件

                                --.postceerc.js----------源码相关js

                                --index.html-------------项目主页

                                --package.json-----------项目信息

                                --package-lock.json------package.json的锁文件,为对应版本的

                                --README.md--------------说明信息

      3. 运行项目

        在当前项目的根目录中,即Carrey_a文件夹内部,运行:

          npm run start

                       

      4. 访问项目

        http://localhost:8080

    [C] vue-cli2的项目开发方式

          一切皆组件,一个组件无非就是js代码,html代码,css代码

        1. vue-cli是在项目中开发一个个组件对应一个个的业务功能,日后可以将多个组件组合到一起形成一个前端系统

        2. 开发时不再书写.html文件,编写的都是一个个的组件(.vue文件),日后打包时 vu-cli会编译成html文件运行

                       

    [D] runtime-compiler和runtime-only

          vue初始化的时候会有runtime-compiler和runtime-only两种模式,区别在于入口文件main.js

        1. runtime-compiler

          runtime-compiler中的main.js是先将App组件注册,然后再使用

          即:

                                    new Vue({

                                        el: '#app',

                                        template: '<App/>',

                                        components: {App}

                                    })

          实现过程:template -> ast -> render -> virtual Dom -> 真实DOM(UI)

                                    1. 当template模板传入时,vue实例将其保存在vm.options中

                                    2. 将该template解析成一个ast(abstract syntax tree抽象语法树)

                                    3. 抽象语法树被编译成render函数,利用render函数创建一个虚拟DOM树(virtual DOM)

                                    4. 将虚拟DOM树渲染在界面(UI)上

                               

        2. runtime-only(1. 性能更高,2. 代码量更少)

                                runtime-only是将App组件直接通过render函数进行渲染

                                即:

                                   new Vue({

                                        el: '#app',

                                        render: h => h(App)

                                    })

                                实现过程:render -> virtual Dom -> 真实DOM(UI)

        3. render函数,实际就是将传入的模板进行解析并替换index.html中的内容

                                new Vue({

                                    el: '#app',

                                    render: h => h(App)

                                })

                                这里的h函数实际上是createElement函数,即

                                render: function(createElement){

                                    // 1. 普通用法createElement(标签, {标签的属性}, [标签里的内容])

                                    return createElement('h2', {class: 'box'}, ['Carrey', createElement(...)]);

                                    // 2. 传入组件对象

                                    return createElement(cpn);  // 这里的cpn为一个组件,

                                    // 因此上面的 h => h(App)中,App也是一个组件,也会被渲染替换到页面中

                                    // 在main.js中导入的App代码里虽然有template,但是App解析后在App对象中中并没有template,却多了一个render

                                    // 因为这里App里的template已经被我们下载的vue-template-compiler插件编译过了

                                }

    [E] CLI3项目初始化

      1. 项目初始化指令

        vue create 项目名

        如: vue create carrey_b

      2. please pick a preset(挑选预先配置)

        default(babel, eslint)  // 默认选择

        Manually se features    // 手动选择(推荐)

      3. 选择需要的配置

          // 空格选中或取消

          () babel

          () TypeScript

          () Processive Web App (PWA) Support

          () Router

          () Vuex

          () CSS Pre-processors

          () Linter / Formatter

          () Unit Testing

          () E2E Testing

      4. 选择配置文件存放位置

          In dedicated config files   // 存放在单独的配置文件中(推荐)

          In package.json             // 存放在package.json中

      5. 是否为以后的项目创建自定义的配置

          y   // 保存——需要填写自定义文件名

          n   // 不保存

          【注】如果某一天我想要删掉保存的自定义配置咋办

            解决办法:

            C:UsersAdministrator中的.vuerc的文件中,记事本打开,删除对应元素即可

      6. 选择包管理工具

          Npm

          Yarn

      7. 完成

    [F] vue-cli3与vue-cli2有很大区别

        1. vue-cli3时基于webpack4打造的,vue-cli2还是webpack3

        2. vue-cli3的设计原则时"0配置", 移除了配置文件根目录下的build和config等目录

        3. vue-cli3提供了vue ui命令,提供了可视化配置,更加人性化

        4. 移除了static文件夹,新增了public文件夹,并且index.html移动到了public中

    [G] vue-cli3目录详解

                            -carrey_b

                                -node_modules

                                -public                         // 相当于CLI2中的static目录

                                    --favicon.ico

                                    --index.html

                                -src                            // 存放源代码的地方,开发就在这里

                                    -assets

                                    -components

                                    --App.vue

                                    --main.js

                                --.browserslistrc               // 浏览器相关支持配置

                                --.gitignore                    // git忽略的文件

                                --babel.config.js               // ES语法转换

                                --package.json                 

                                --package.lock.json          

                                --postcss.config.js             // CSS相关配置

                                --README.md

    [H] cli3查看和修改配置信息

      三种方法可以实现:

        1. vue ui

            vue ui是vue-cli3种新增的一个可视化界面, 用于操作一些配置信息和配置文件

          使用方法:

                                    1. 在终端运行指令

                                        vue ui

                                        // 注:这个指令运行的路径没关系,任意路径下都可以运行

                                    2. 查找到相关项目路径,打开项目文件夹

        2. 查找配置信息文件

          1. 配置文件存放地址:

            node_modules/@vue/cli-service/webpack.config.js

          2. 上述的配置文件中require了一个文件'./lib/Service'

            node_modules@vuecli-servicelibService.js

          3. 修改配置信息

                                    1. 在当前项目的根目录下新建一个文件vue.config.js

                                        注意:这个文件的文件名不可随意修改

                                    2. 在文件中导出我们需要修改的配置

                                        module.export = {

                                            // 需要修改的配置信息

                                        }

                                    3. 脚手架3会自动将你所修改的配置文件与原来的配置文件进行合并

  • 相关阅读:
    【蜕变之路】第20天 UUID和时间戳的生成 (2019年3月10日)
    3.EntityFramework的多种记录日志方式,记录错误并分析执行时间过长原因(系列4)
    reactnative资源
    代码
    模板匹配模型、原型模型和区别性特征模型各自如何解释汉字的知觉
    mysqldatadir 转移
    mysql主从设置windows
    心灵鸡汤
    测试的发现遗漏BUG的做法
    汉字模式匹配的过程
  • 原文地址:https://www.cnblogs.com/carreyBlog/p/14061595.html
Copyright © 2011-2022 走看看