走进webpack(3)– 小结「建议收藏」

写这一系列的文章,本意是想要梳理一下自己凌乱的webpack知识,只是使用过vue-cli,修改过其中的一部分代码,但是对于一个简单项目从0开始搭建webpack的流程和其中的依赖并不是十分清楚。所以

大家好,又见面了,我是你们的朋友全栈君。

  写这一系列的文章,本意是想要梳理一下自己凌乱的webpack知识,只是使用过vue-cli,修改过其中的一部分代码,但是对于一个简单项目从0开始搭建webpack的流程和其中的依赖并不是十分清楚。所以写了这样的一系列文章,一方面巩固自己的知识,一方面也可以给小伙伴们一点点入口。但是无奈运气不好,偏偏恰逢webpack4热火朝天的上线了,在webpack3时代的一部分使用方法已经没办法照葫芦画瓢了。所以一边查看文档和github,给大家找到了一些并不是很完美的解决方案。这是这个系列的最后一篇,说一说webpack一些可以优化的地方。也算是给这个系列一个6分的答卷吧。

  先给大家介绍一个webpack自带的小插件,BannerPlugin,我们在前面的文章中说过,webpack自带的插件需要引入webpack,前面已经引入过了,这里就不再重复说明,然后我们只需要在plugins中加上一段代码就可以了:

new webpack.BannerPlugin('author:zaking')

  这样在你打包生成的文件中都会带上你的标记,主要的作用就是在工作中找到这么垃圾的代码是谁写的。

  下面我们来看看如何将静态资源集中打包在一个文件夹下,这样会方便我们的开发和维护。想要将静态资源集中,我们需要一个插件copywebpackplugin。

  如何安装和引入就不多说了,直接上代码:

 new copyWebpackPlugin([{
     from:__dirname+'/src/public',
      to:'./public'
 }])

  安装和引入完成之后,在plugins配置中加入如上代码,也就是说从你的src/public目录下的所有文件都会打包到dist/public目录下,那么你现在如果打包的话会有报错,因为你的src下并没有public目录,所以我们新建一个目录,并且把src/images下的图片改个名字放进去,然后在打包就会发现完全没问题了。

  那么下面再说说如何读取json文件,我们偷点懒,直接使用package.json,看看如何读取其中的内容。

  首先,我们在index.html中新建一个div,名为jsonDIV:

<!-- 读取json数据的容器 -->
<div id="jsonDiv"></div>

  然后再main.js中加入一段代码:

//读取json
var json =require('../package.json');
document.getElementById("jsonDiv").innerHTML= json.name;

  然后我们npm run dev一下,就可以看到页面中已经显示了我们的项目名称,说明读取成功。

  回头看了下这篇文章有点短小,但是想来想去实在不知道还有什么可以写在这系列的最后一篇文章中。可能有人会问,怎么webpack这么多的功能你没什么说的了?不是的,而是再说下去也是重复之前说过的,各种loader,各种插件,所以也就不说了。如果大家对webpack更多的功能和用法有兴趣,可以去查看官方文档,那里还是比较详细的。而目前webpack4的发布,使很多小伙伴都迫不及待地想要尝尝鲜,但是webpack3仍旧是当前的主流,而且4的文档并不全面,很多功能如果英文不太好的话还是很难的。所以个人建议大家在工作中没必要使用4。当然,想要课后学习一下是值得肯定的。

  那么最后,非常感谢大家阅读!github代码已经同步更新!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/124433.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • FRP内网穿透_内网穿透 无需公网ip

    FRP内网穿透_内网穿透 无需公网ip一、关于内网穿透内网穿透,也即NAT穿透,进行NAT穿透是为了使具有某一个特定源IP地址和源端口号的数据包不被NAT设备屏蔽而正确路由到内网主机。下面就相互通信的主机在网络中与NAT设备的相对位置介绍内网穿透方法。二、为什么要使用内网穿透为了外网要访问内网,因为当不在同一局域网内,ip和地址互相ping不同的话,最简单的方式是使用向日葵与teamview,但是用起来并不方便。三、使用frp进行内网穿透(1)关于frp的介绍frp是一个高性能的反向代理应用,可以帮助您轻

    2022年9月12日
    0
  • PHP面试-复习知识点整理「建议收藏」

    PHP面试-复习知识点整理

    2022年2月10日
    45
  • C语言再学习 — 关键字volatile

    C语言再学习 — 关键字volatile占楼

    2022年7月27日
    4
  • 大屏数据可视化案例「建议收藏」

    大屏数据可视化案例「建议收藏」数据可视化:把相对复杂的、抽象的数据通过可视的、交互的方式进行展示,从而形象直观地表达数据蕴含的信息和规律。数据可视化是数据空间到图形空间的映射,是抽象数据的具象表达。数据可视化交互的基本原则:总览为先,缩放过滤按需查看细节。大屏数据可视化是当前可视化领域的一项热门应用,通常可以分为信息展示类、数据分析类及监控预警类。大屏数据可视化应用的难点并不在于图表类型的多样化,而在于如何能在…

    2022年6月27日
    31
  • cas认证 php,使用php处理cas认证[通俗易懂]

    cas认证 php,使用php处理cas认证[通俗易懂]最近项目要嵌入到平台上做一个应用,数据对接用ms-security(见上篇博客),登录则使用cas认证,今天就把完整代码放进来,也是走了好些个弯路的。代码的主要逻辑就是,当用户访问应用时,应用检测是否已登录,未登录则带上本地url跳转到cas登录中心,用户输入用户名、密码后,正确的话便带上ticket跳转到一开始带上的url(通常是该应用的登录接口),检测到ticket后便使用file_get_c…

    2022年6月29日
    34
  • hackbar工具安装使用教程

    hackbar工具安装使用教程HackBar工具介绍HackBar是一个浏览器上的一个插件,包含一些黑客常用的工具,比如SQLinjection,XSS,加密等!免费版下载百度网盘:https://pan.baidu.com/s/1WBT6iqx9ZRSbCRbGWUfvvA提取码:1234免费版安装:按F12打开hackbar界面…

    2022年6月14日
    149

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号