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搭建项目的更多相关文章

  1. vue-cli+ webpack 搭建项目todolist

    本文接着之前的todolist例子,通过vue-cli + webpack 搭建项目:针对于vue-cli 2.x版本,更高版本找官网https://cli.vuejs.org/guide/insta ...

  2. 《后端也要懂一点前端系列》使用webpack搭建项目

    今天突然有兴致想要学习一下前端的技术,所以特此记录学习前端之路.由于之前在公司做的项目大部分都是关于JSP页面的增删改查,所以前端后端都是一个人来写的,对于前端还只是停留在js.html.css阶段, ...

  3. react+webpack搭建项目

    一.环境准备 ①node ②npm 二.开始搭建 ①使用npm安装create-react-app工具,在cmd命令行中输入: npm install -g create-react-app ②使用命 ...

  4. vue+webpack搭建项目

    1.全局安装node.js 2.安装vue-cli 可以在项目目录安装 npm install -g vue-cli 使用vue-list命令选择webpack模板 vue init webpack ...

  5. 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 ...

  6. 用react+redux+webpack搭建项目一些疑惑

    --save-dev开发用 例如:webpack --save开发和发布用 例如:react

  7. vue2.0 使用webpack搭建项目遇到的最搞笑的坑

    报错如下: 源码: 然后找了半天没搞明白... 无意中翻看了一下ES6语法规则.. 然后我发现:源代码最后一行要空一行,我心想这什么狗屁规定?MMP

  8. vue-cli搭建项目的目录结构及说明

    vue-cli基于webpack搭建项目的目录结构 build文件夹 ├── build              // 项目构建的(webpack)相关代码    │ ├── build.js   ...

  9. SpringBoot+MyBatisPlus+ElementUI一步一步搭建前后端分离的项目(附代码下载)

    场景 一步一步教你在IEDA中快速搭建SpringBoot项目: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/87688277 ...

随机推荐

  1. 设置linux系统时间的方法

    尝试了好多,都是因为权限问题失败,但是总结出了几种思路: 1 通过linux指令进行设置: date -s "20091112 18:30:50" &&hwcloc ...

  2. 《Mysql - Mysql 是如何保证高可用的?》

    一:为什么要进行主备切换? - 比如软件升级.主库所在机器按计划下线等.主动运维. - 比如主库所在机器掉电,为了保证服务的正常运行,而进行切换.可能是被动操作. - 流程图 -   二:什么是同步延 ...

  3. TypeScript TSLint(TypeScript代码检查工具)

    TSLint是TypeScript代码的样式风格检查工具.类似于JavaScript的ESLint,或者Ruby的Rubocop. 配置TSLint TSLint是一个外部工具,我们需要进行一次安装工 ...

  4. spring boot配置文件application.properties配置JPA以及数据源

    1.application.properties配置jpa模板 spring.datasource.url=jdbc:mysql://localhost:3306/springboottest?use ...

  5. AQS底层原理分析

    J.U.C 简介 Java.util.concurrent 是在并发编程中比较常用的工具类,里面包含很多用来在并发场景中使用的组件.比如线程池.阻塞队列.计时器.同步器.并发集合等等.并发包的作者是大 ...

  6. 开始使用 Manjaro(添加源+字体渲染去模糊+软件安装+优化配置+常见错误)(30)

    1. 添加 archlinux 镜像源 1. 步骤一 向 /etc/pacman.d/mirrorlist 中添加国内镜像地址 1.1 方法1:自动添加 1. 输入如下命令查看国内镜像源,并按质量排序 ...

  7. STL源码剖析——iterators与trait编程#1 尝试设计一个迭代器

    STL的中心思想在于:将数据容器与算法分开,独立设计,再用一帖粘着剂将它们撮合在一起.而扮演粘着剂这个角色的就是迭代器.容器和算法泛型化,从技术角度来看并不困难,C++的模板类和模板函数可分别达成目标 ...

  8. xsy 2412【BZOJ4569】【Scoi2016】萌萌哒

    Description Description 一个长度为n的大数,用S1S2S3...Sn表示,其中Si表示数的第i位,S1是数的最高位,告诉你一些限制条件,每个条件表示为四个数,l1,r1,l2, ...

  9. C++枚举类型教案

    一.枚举类型的应用场景 只需要将需要的变量值一一列举出来,便构成一个枚举类型. 二.枚举类型的定义 ·定义方式: enum 枚举类型名字{枚举常量表}: ·关键字enum:说明接下来定义的是一个枚举类 ...

  10. Linux上安装pstree命令(-bash: pstree: command not found)

    一.pstree命令的安装 1.在 Mac OS上 brew install pstree 2.在 Fedora/Red Hat/CentOS yum -y install psmisc 3.在 Ub ...