当前位置: 首页 > news >正文

@vue/cli脚手架

 

0_@vue/cli 脚手架介绍

目标: webpack自己配置环境很麻烦, 下载@vue/cli包,用vue命令创建脚手架项目

  • @vue/cli是Vue官方提供的一个全局模块包(得到vue命令), 此包用于创建脚手架项目

    脚手架是为了保证各施工过程顺利进行而搭设的工作平fdfa4f3732f841efaa779b6727a24ce8.png

@vue/cli的好处

  • 开箱即用

    0配置webpack

    babel支持

    css, less支持

    开发服务器支持

1_@vue/cli安装

目标: 把@vue/cli模块包按到全局, 电脑拥有vue命令, 才能创建脚手架工程

  • 全局安装命令

yarn global add @vue/cli

# OR

npm install -g @vue/cli

注意: 如果半天没动静(95%都是网速问题), 可以ctrl c

  1. 停止重新来

  2. 换一个网继续重来

  • 查看vue脚手架版本

vue -V

总结: 如果出现版本号就安装成功, 否则失败

2_@vue/cli 创建项目启动服务

目标: 使用vue命令, 创建脚手架项目

注意: 项目名不能带大写字母, 中文和特殊符号

  1. 创建项目

# vue和create是命令, vuecli-demo是文件夹名

vue create vuecli-demo

  1. 选择模板

    可以上下箭头选择, 弄错了ctrl+c重来

afb53ef2446a4708a60eddee82bde853.png

选择用什么方式下载脚手架项目需要的依赖包

89cf7d877ef848e7ad21c4337b591f8f.png

  1. 回车等待生成项目文件夹+文件+下载必须的第三方包们21c73db7ef7744588161ddaefd48f594.png

  1. 进入脚手架项目下, 启动内置的热更新本地服务器

cd vuecil-demo
​
npm run serve
# 或
yarn serve

只要看到绿色的 - 啊. 你成功了(底层node+webpack热更新服务)

4c84bd1571874308988de7335fb3bf83.png

打开浏览器输入上述地址

1c070e67b9a24fae9adb1d27c66d5f8c.png

 

总结: vue命令创建工程目录, 项目内置webpack本地热更新服务器, 帮我们打包项目预览项目

3 @vue/cli 目录和代码分析

目标: 讲解重点文件夹, 文件的作用, 以及文件里代码的意思

 vuecil-demo        # 项目目录├── node_modules # 项目依赖的第三方包├── public       # 静态文件目录├── favicon.ico# 浏览器小图标└── index.html # 单页面的html文件(网页浏览的是它)├── src          # 业务文件夹├── assets     # 静态资源└── logo.png # vue的logo图片├── components # 组件目录└── HelloWorld.vue # 欢迎页面vue代码文件 ├── App.vue    # 整个应用的根组件└── main.js    # 入口js文件├── .gitignore   # git提交忽略配置├── babel.config.js  # babel配置├── package.json  # 依赖包列表├── README.md    # 项目说明└── yarn.lock    # 项目包版本锁定和缓存地址

主要文件及含义

node_modules下都是下载的第三方包
public/index.html – 浏览器运行的网页
src/main.js – webpack打包的入口文件
src/App.vue – vue项目入口页面
package.json – 依赖包列表文件

4_@vue/cli 项目架构了解

目标: 知道项目入口, 以及代码执行顺序和引入关系

892cce3b0cdb441a989aeb12d84329e8.png

5_@vue/cli 自定义配置

目标:项目中没有webpack.config.js文件,因为@vue/cli用的vue.config.js

src并列处新建vue.config.js

/* 覆盖webpack的配置 */
module.exports = {devServer: { // 自定义服务配置open: true, // 自动打开浏览器port: 3000}
}

6_eslint了解

目标: 知道eslint的作用, 和如何暂时关闭, 它是一个代码检查工具

例子: 先在main.js 随便声明个变量, 但是不要使用

90bc5af272eb4a37b1a01b132f13fd1e.png

观察发现, 终端和页面都报错了

记住以后见到这样子的错误, 证明你的代码不严谨ee75b36a7d8d4971ae64db25df74019b.png1b7fa7fac393462a938067c1b221dfa6.png

方式1: 手动解决掉错误, 以后项目中会讲如何自动解决

方式2: 暂时关闭eslint检查 在vue.config.js中配置后重启服务

8a0747c9fc8a4eeca0eb0a1c0dbf2a3c.png

7_@vue/cli 单vue文件讲解

目标: 单vue文件好处, 独立作用域互不影响

Vue推荐采用.vue文件来开发项目

template里只能有一个根标签

vue文件-独立模块-作用域互不影响

style配合scoped属性, 保证样式只针对当前template内标签生效

vue文件配合webpack, 把他们打包起来插入到index.html

<!-- template必须, 只能有一个根标签, 影响渲染到页面的标签结构 -->
<template><div>欢迎使用vue</div>
</template>
​
<!-- js相关 -->
<script>
export default {name: 'App'
}
</script>
​
<!-- 当前组件的样式, 设置scoped, 可以保证样式只对当前页面有效 -->
<style scoped>
</style>
​

最终: Vue文件配合webpack, 把他们打包起来插入到index.html, 然后在浏览器运行

8_@vue/cli 欢迎界面清理

目标: 我们开始写我们自己的代码, 无需欢迎页面

  • src/App.vue默认有很多内容, 可以全部删除留下框

  • assets 和 components 文件夹下的一切都删除掉 (不要默认的欢迎页面)

 

相关文章:

  • debian10安装配置vim+gtags
  • Text Intelligence - TextIn.com AI时代下的智能文档识别、处理、转换
  • pdf 在线编辑
  • Hosts文件详解
  • 单词反转(字符串)
  • 【排序算法】C语言实现选择排序与冒泡排序
  • 阿里云林立翔:基于阿里云 GPU 的 AIGC 小规模训练优化方案
  • 【HTML5】HTML5 语音合成
  • 100GPTS计划-AI文章扩展ContentExpander
  • 使用GitZip下载GitHub指定文件
  • sklearn多项式回归和线性回归
  • 信息论安全与概率论
  • 【三维生成与重建】ZeroRF:Zero Pretraining的快速稀疏视图360°重建
  • idea 如何使用 JaCoCo 跑覆盖率
  • 单元测试框架jUnit
  • 4月23日世界读书日 网络营销论坛推荐《正在爆发的营销革命》
  • golang 发送GET和POST示例
  • JavaScript工作原理(五):深入了解WebSockets,HTTP/2和SSE,以及如何选择
  • Java新版本的开发已正式进入轨道,版本号18.3
  • leetcode378. Kth Smallest Element in a Sorted Matrix
  • macOS 中 shell 创建文件夹及文件并 VS Code 打开
  • Object.assign方法不能实现深复制
  • Octave 入门
  • PAT A1050
  • PAT A1092
  • PhantomJS 安装
  • SpiderData 2019年2月16日 DApp数据排行榜
  • spring + angular 实现导出excel
  • Web设计流程优化:网页效果图设计新思路
  • 番外篇1:在Windows环境下安装JDK
  • 汉诺塔算法
  • 警报:线上事故之CountDownLatch的威力
  • 马上搞懂 GeoJSON
  • 前端
  • 我的zsh配置, 2019最新方案
  • 《TCP IP 详解卷1:协议》阅读笔记 - 第六章
  • python最赚钱的4个方向,你最心动的是哪个?
  • 好程序员web前端教程分享CSS不同元素margin的计算 ...
  • 容器镜像
  • ​RecSys 2022 | 面向人岗匹配的双向选择偏好建模
  • ​比特币大跌的 2 个原因
  • # 安徽锐锋科技IDMS系统简介
  • # 数据结构
  • #Ubuntu(修改root信息)
  • #数学建模# 线性规划问题的Matlab求解
  • (day 2)JavaScript学习笔记(基础之变量、常量和注释)
  • (Matlab)基于蝙蝠算法实现电力系统经济调度
  • (zhuan) 一些RL的文献(及笔记)
  • (ZT)出版业改革:该死的死,该生的生
  • (阿里巴巴 dubbo,有数据库,可执行 )dubbo zookeeper spring demo
  • (二)pulsar安装在独立的docker中,python测试
  • (分布式缓存)Redis持久化
  • (附源码)springboot高校宿舍交电费系统 毕业设计031552
  • (四)docker:为mysql和java jar运行环境创建同一网络,容器互联
  • (四)鸿鹄云架构一服务注册中心