一步一步使用webpack搭建项目
MPA |-src
|-main.js 项目打包的入口文件
|-App.vue 项目的根组件(项目一启动,见到的第一个页面)
|-package.json 项目的描述文件,用于记录安装了哪些包
|-webpack.config.dev.js 开发阶段webpack的配置文件
切换到根目录,使用 npm init -y 生成package.json
tips:vue项目跟react项目目录结构基本一致
二:
webpack-dev-server & webpack的区别
webpack-dev-server :【内部开启了一个node服务】
开发阶段使用,它是在webpack基础上又封装了一把,webpack有的功能它都有,并且
还拓展了一些,打包生成的bundle.js及index.html都是发布到它内部开启的node服务
上面去了 webpack:生产阶段,它是在整个项目做完了之后,接下来,打包生成可以上线的
静态资源
注意:webpack的版本和webpack-dev-server的版本是需要对应的,否则会报错
webpack 3.x版本 对应 webpack-dev-server2.x
webpack 4.x版本 对应 webpack-dev-server3.x
三:
package.json 和 package-lock.json 作用分析
1.package.json 文件里记录有项目所安装的依赖项,当 node_modules 被删除时,可以再根据该文件安装所需的依赖项; 2.npm 5 以前不会有 package-lock.json 这个文件,npm5 之后才加入这个文件; 3.当安装包的时候,npm 都会生成或者更新 package-lock.json 这个文件; 4.npm 5 之后的版本安装包的时候不需要加 --save 参数,它会自动保存依赖的信息; 5.当安装包的时候,会自动创建或者更新 package-lock.json 文件; 6.package-lock.json 文件会保存 node_modules 中所有包的信息(版本、下载地址),重新 npm install 的时候速度会提升; 7.文件的名称有 lock ,表示该文件可以用来锁定版本号,防止自动升级新版。
四:
使用 webpack-dev-server 和 html-webpack-plugin 运行我们的项目
html-webpack-plugin
以一个参考文件为模版,生成index.html,并且会自动发布到webpack-dev-server开启的node
服务上面去 参考:https://github.com/jantimon/html-webpack-plugin 步骤:
1、在根目录下面,创建一个template.html,里面写上id=app的div 2、在webpack.config.dev.js中的plugins中写代码 webpack-dev-server
放在package.json中的scripts中去 webpack-dev-server --progress --config webpack.config.dev.js --port 6008 --open --hot --port 指定node服务运行的端口号
--open 把我们项目运行在浏览器中,并且自动打开浏览器
--hot 实现热重载/热替换/热更新/热加载 最终运行,切换到根目录,运行 npm run dev
五:
第一次安装
包:vue
应用场景:我们要去运行App.vue
安装方式:npm i vue -S 第二次安装
包:vue-loader vue-template-compiler css-loader style-loader
应用场景:我们要打包.vue结尾的文件
安装方式:npm i vue-loader vue-template-compiler css-loader style-loader -D 第三次安装
包:html-webpack-plugin webpack@3.11.0 webapck-dev-server@2.11.1
应用场景:我们到时候运行打包出来的bundle.js
安装方式:npm i html-webpack-plugin webpack@3.11.0 webpack-dev-server@2.11.2 -D
一步一步使用webpack搭建项目的更多相关文章
- vue-cli+ webpack 搭建项目todolist
本文接着之前的todolist例子,通过vue-cli + webpack 搭建项目:针对于vue-cli 2.x版本,更高版本找官网https://cli.vuejs.org/guide/insta ...
- 《后端也要懂一点前端系列》使用webpack搭建项目
今天突然有兴致想要学习一下前端的技术,所以特此记录学习前端之路.由于之前在公司做的项目大部分都是关于JSP页面的增删改查,所以前端后端都是一个人来写的,对于前端还只是停留在js.html.css阶段, ...
- react+webpack搭建项目
一.环境准备 ①node ②npm 二.开始搭建 ①使用npm安装create-react-app工具,在cmd命令行中输入: npm install -g create-react-app ②使用命 ...
- vue+webpack搭建项目
1.全局安装node.js 2.安装vue-cli 可以在项目目录安装 npm install -g vue-cli 使用vue-list命令选择webpack模板 vue init webpack ...
- webpack搭建项目时出现的报错“Module build failed (from ./node_modules/css-loader/dist/cjs.js) CssSyntaxError”
控制台出现的错误如下: webpack.config.js中的配置如下: module.exports={ entry:'./src/main.js', output:{ path:__dirname ...
- 用react+redux+webpack搭建项目一些疑惑
--save-dev开发用 例如:webpack --save开发和发布用 例如:react
- vue2.0 使用webpack搭建项目遇到的最搞笑的坑
报错如下: 源码: 然后找了半天没搞明白... 无意中翻看了一下ES6语法规则.. 然后我发现:源代码最后一行要空一行,我心想这什么狗屁规定?MMP
- vue-cli搭建项目的目录结构及说明
vue-cli基于webpack搭建项目的目录结构 build文件夹 ├── build // 项目构建的(webpack)相关代码 │ ├── build.js ...
- SpringBoot+MyBatisPlus+ElementUI一步一步搭建前后端分离的项目(附代码下载)
场景 一步一步教你在IEDA中快速搭建SpringBoot项目: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/87688277 ...
随机推荐
- 在ensp上配置通过Telent登录系统
本实验模拟公司网络场景,路由器R1是公司机房的一台设备,公司员工的办公区 与机房不在同一个楼层,路由器R2和R3模拟员工主机,通过交换机S1与机房设备相 连.为了方便用户的管理,现需要在路由器R1上配 ...
- ubuntu16.04 下Mongo数据库搭建
一 数据库安装 1.下载自己需要的数据库版本和系统,下载地址:https://www.mongodb.com/download-center/community . 本文下载的为ubuntu 16.0 ...
- D2.Docker: 安装部署相关问题
[mysql] docker 安装完mysql 后客户端无法访问
- Python类的访问限制
使用两个_将变量设置为private,访问变量可定义get方法,对变量值修改可定义set方法,修改变量值的时候可检查参数的有效性. class Student(object): #定义一个Studen ...
- go 食用指南
Golang高效食用秘籍 一.关于构建 1.1 go环境变量 $ go env // 查看go 的环境变量 其中 GOROOT 是golang 的安装路径 GOPATH 是go命令依赖的一个环境变量 ...
- jquery中filter()和find()函数区别
通常把这两个函数,filter()函数和find()函数称为筛选器. 下面的例子分别使用filter函数和find函数对一组列表进行筛选操作. 一组列表: <li>1</li> ...
- 计算机网络自顶向下方法第3章-传输层 (Transport Layer).2
3.5 面向连接的运输: TCP 3.5.1 TCP连接 TCP是因特网运输层的面向连接的可靠的运输协议. TCP连接提供全双工服务(full-duplex service). TCP连接是点对点的连 ...
- Linux文件和目录相关的命令
当前目录 . 上一层目录 .. tab键 自动补全 查看目录内容 ls 以.开头的都是隐藏文件需要用-a才能显示出来 ls通配符的使用 * 代表任意个数个字符 ...
- Luogu5401 CTS2019珍珠(生成函数+容斥原理+NTT)
显然相当于求有不超过n-2m种颜色出现奇数次的方案数.由于相当于是对各种颜色选定出现次数后有序排列,可以考虑EGF. 容易构造出EGF(ex-e-x)/2=Σx2k+1/(2k+1)!,即表示该颜色只 ...
- JDK8源码解析 -- HashMap(一)
最近一直在忙于项目开发的事情,没有时间去学习一些新知识,但用忙里偷闲的时间把jdk8的hashMap源码看完了,也做了详细的笔记,我会把一些重要知识点分享给大家.大家都知道,HashMap类型也是面试 ...