zoukankan      html  css  js  c++  java
  • vue-cli@3.x之使用vue ui创建项目-来自一个战五渣的体验

    image image image image

    1. 全局安装vue-cli

    yarn global add @vue/cli
    // 检查安装是否成功
    vue -V
    // 3.2.2
    

    2. 初始化 vue ui

    执行命令

    vue ui
    

    2.1

    该命令会自动打开你的浏览器,默认地址为: localhost:8000/project/select,浏览器展示的页面如下:

    切换界面到创建,点击下面在此创建新项目按钮

    1. 输入项目文件夹名称
    2. 包管理器,如果你已经安装了yarn,vue ui的默认包管理器是yarn
    

    2.2

    2.3

    上面的两项不用管,是我之前创建过玩的。可能你打开不是这样的,只有默认,手动和远程预设这三项。这里选择手动,下一步。

    2.4

    接下来,你会被要求配置预装选项,根据你自己项目需求勾选即可。一般来说,Babel,Router,Vuex,Linter这四项是必装的,另外我还勾选了下使用配置文件,可能有的人看不惯项目生成很多的.babelrc 这样单独的配置文件,也可以不勾,这样的话会统一到package.json中去配置

    2.5


    第一个是问你router的mode要不要设成history模式,一般正式项目都会设成这种模式的
    第二个问你选用哪种Eslint风格,从vue-cli@2.x似乎就是standard选的多一些。
    第三个是表示当你保存/提交时自动做Lint

    接下来会弹窗问你要不要保存为新预设,如果保存的话以后创建项目就可以像2.3中的那种图一样直接选择预设创建项目了

    3.与vue-cli@2.x的不同之处

    这篇博文感觉都有点写不下去了- -,因为我使用vue ui整个创建项目过程实在过于简单,都是中文版的,直接介绍一下我认为的几个亮点吧。

    3.1 关于插件与预设
    以前vue-cli@2.x是只提供6种默认模板供大家下载使用,如果想要自己高度自定义,比如你想基于typescritp去做项目,只能去fork官方模板,然后自己修改它,基本上没有生态圈可言。而现在vue-cli@3.x很多特性都是基于插件来灵活扩展的,会有很多大佬去开发各种各样的插件体系,相当于一个插件就可以是一种模板了,比如你在插件面板中可以搜一下elementUI,安装它的话就可以直接帮你生成一套整个基于elementUI的模板了。下载了就能用,基本上零配置。这是因为

    • 每个插件都可以对项目文件操作
    • 每个插件都可以对项目中已有的webpack配置进行操作
    • 每个插件都可以对项目中注入一些script命令,比如serve,build之类的,还可以往一些钩子上注入一些想要执行的事件,比如install之后要做什么
    • 每个插件都可以引入其他插件

    以前每次创建一个新项目,都需要自己手动去安装各种依赖什么的,然后又一顿配置改改改。而有了预设之后,下次创建项目的时候都出现在选项列表里,只要勾选了就可以创建一个和之前一样配置和依赖的项目。

    (此章节暂时对于我这个战5渣显得太过高深,大家自行去了解更好)

    3.2 关于依赖
    以前安装插件,需要在vscode编辑器的命令行里执行 yarn add axios 等依赖,
    现在可以直接去vue ui 的依赖面板中点右上角的添加依赖,来搜索你想要安装的依赖直接安装。

    3.3 关于项目配置

    vue-cli@3.x可以让vue ui的界面上直接通过勾选还是不勾选来决定开启还是关闭某些功能(我估计是官方实在是看不惯vue-cli@2.x中一群人瞎改它build目录里的配置然后玩崩了之后去github提各种乱七八糟的issue了,哈哈哈),这种图形化界面的操作方式无疑对我这种战无渣更友好了...再也不用去记一些乱七八糟的命令,百度各种不怎么靠谱的解决方式。

    3.4 关于vue ui的任务面板
    这个让我感觉特神奇的就是,再也不用在我的编辑器里去执行yarn dev 或者npm run dev了,敲个业务代码还得特意留四分之一的窗口去看它命令行有没有报错...它可以直接在一个网页里跑起来我的项目,还有各种报告生成(虽然我现在很多功能也看不太懂,但是很酷炫有木有)。
    同样也可以直接在vue ui界面上去执行run build。查看各种数据,比如打包后的大小等

    3.5 关于生成的项目文件夹

    .
    ├── public
    │   ├── favicon.ico
    │   └── index.html
    ├── src
    │   ├── assets
    │   │   └── logo.png
    │   ├── components
    │   │   └── HelloWorld.vue
    │   ├── views
    │   │   ├── About.vue
    │   │   └── Home.vue
    │   ├── App.vue
    │   ├── main.js
    │   ├── router.js
    │   └── store.js
    ├── .browserslistrc
    ├── .editorconfig
    ├── .eslintrc.js
    ├── .gitignore
    ├── README.md
    ├── babel.config.js
    ├── package.json
    ├── postcss.config.js
    └── yarn.lock
    
    

    相比于vue-cli@2.x也简洁了很多,没有build和config目录。
    后期遇到坑点应该会记录一下。

    番外篇:

    另外介绍下mac系统中这种树文件是如何生成的

    // 1. 安装brew
    /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
    // 2. 利用brew安装tree
    brew install tree
    // 3. 列出文件树
    tree -a  -I "node_modules|.git|.vscode" --dirsfirst >a.md
    // -a表示列出所有文件,这样可以列出来 .eslintrc.js 这样的以.开头的隐藏文件
    // -I "node_modules|.git|.vscode" 这样表示忽略这三个文件夹
    // --dirsfirst 表示以文件夹优先排序
    // >a.md  表示输出到 a.md文件中
    
  • 相关阅读:
    ASCII 说明
    用GDB调试程序
    手把手教你使用Matplotlib绘图|实战
    什么!Python还能帮你找老婆?
    词云图的几种制作方法评测,你pick哪款
    我常用的10个Python实用小Trick
    爬虫代码详解Python多线程、多进程、协程
    [转载] tomcat集群基于redis共享session解决方案
    集群/分布式环境下5种session处理策略
    java7特性之 try-with-resources
  • 原文地址:https://www.cnblogs.com/hezhi/p/10212060.html
Copyright © 2011-2022 走看看