从零开始搭建一个基于React框架的博客发布系统 (SIX) Webpack编译配置

本文主要是介绍从零开始搭建一个基于React框架的博客发布系统 (SIX) Webpack编译配置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

打包是门学问,用户浏览你的网站,你应该总是想用户查看不同的页面的同时去加载相应的资源,而不是用户访问你的网站你就一股脑的把服务端资源全部传送给用户,比如我要看第一篇博客,你凭什么把所有的博客全部发给用户,浪费流量倒是小事,但是网站资源过多,这就是性能的瓶颈。

在config下新建blog.js文件,分别把每篇博客作为打包的入口。可以打印一下blog返回的内容。

这里写图片描述

通过这个不难看出,他找到了博客所在的具体文件夹,可以看出第一次打包的产出结果:

这里写图片描述

css,js单独放在了一个文件夹中,以及md文件作为静态文件存在。

现在我把entry变成

entry: {app: [require.resolve('./polyfills'), paths.appIndexJs],...blogs},

app文件夹下统一存放index.js引申的文件,blog另外作为入口打包。

这里写图片描述

样式还没有处理,但是你可以看到,每一篇博客都被分别打包了。

剩下的时候就是我们开发的时候做的操作,包括raw-loader打包markdown文件,

less-loader,postcss-loader等解析css文件。这些和开发环境是一致的,因为毕竟build也需要执行展示的。

并且,在代码中,我使用了新引入的UglfyJsPlugin,并没有使用webpack**自带**的UglfyJsPlugin,避免一些问题的出现。

new UglifyJsPlugin({ sourceMap: false }),

看看现在的build效果:

这里写图片描述

这样依赖打包的内容就更清爽了,直观看到的是.map文件不见了,看刚才的UglfyJsPlugin的配置,

我们把sourceMap设置为了false
还差一步,我暂时还不知道原因,记得把webpack的一段话修改一下打包方式:

{test: /\.(js|jsx|mjs)$/,include: paths.appSrc,loader: require.resolve('babel-loader'),options: {//compact:true  放弃这个默认的操作。cacheDirectory: true,},},

一开始默认的是compact:true
这样一来,就剩下最后一步了,这个就不涉及前端的知识了,记得一开始的时候让大家新建过一个github.io的仓库,这个就是github提供给你存放部署代码的,你提交上去的代码他会自动为你部署,然后通过https://xxx.github.io就可以访问自己添加的内容了。

到这里,博客系统就告一段落了,以后可能会继续升级功能,谢谢收看,有问题留言哦。

这篇关于从零开始搭建一个基于React框架的博客发布系统 (SIX) Webpack编译配置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/248467

相关文章

在C#中获取端口号与系统信息的高效实践

《在C#中获取端口号与系统信息的高效实践》在现代软件开发中,尤其是系统管理、运维、监控和性能优化等场景中,了解计算机硬件和网络的状态至关重要,C#作为一种广泛应用的编程语言,提供了丰富的API来帮助开... 目录引言1. 获取端口号信息1.1 获取活动的 TCP 和 UDP 连接说明:应用场景:2. 获取硬

windos server2022的配置故障转移服务的图文教程

《windosserver2022的配置故障转移服务的图文教程》本文主要介绍了windosserver2022的配置故障转移服务的图文教程,以确保服务和应用程序的连续性和可用性,文中通过图文介绍的非... 目录准备环境:步骤故障转移群集是 Windows Server 2022 中提供的一种功能,用于在多个

windos server2022里的DFS配置的实现

《windosserver2022里的DFS配置的实现》DFS是WindowsServer操作系统提供的一种功能,用于在多台服务器上集中管理共享文件夹和文件的分布式存储解决方案,本文就来介绍一下wi... 目录什么是DFS?优势:应用场景:DFS配置步骤什么是DFS?DFS指的是分布式文件系统(Distr

JAVA系统中Spring Boot应用程序的配置文件application.yml使用详解

《JAVA系统中SpringBoot应用程序的配置文件application.yml使用详解》:本文主要介绍JAVA系统中SpringBoot应用程序的配置文件application.yml的... 目录文件路径文件内容解释1. Server 配置2. Spring 配置3. Logging 配置4. Ma

2.1/5.1和7.1声道系统有什么区别? 音频声道的专业知识科普

《2.1/5.1和7.1声道系统有什么区别?音频声道的专业知识科普》当设置环绕声系统时,会遇到2.1、5.1、7.1、7.1.2、9.1等数字,当一遍又一遍地看到它们时,可能想知道它们是什... 想要把智能电视自带的音响升级成专业级的家庭影院系统吗?那么你将面临一个重要的选择——使用 2.1、5.1 还是

关于Maven中pom.xml文件配置详解

《关于Maven中pom.xml文件配置详解》pom.xml是Maven项目的核心配置文件,它描述了项目的结构、依赖关系、构建配置等信息,通过合理配置pom.xml,可以提高项目的可维护性和构建效率... 目录1. POM文件的基本结构1.1 项目基本信息2. 项目属性2.1 引用属性3. 项目依赖4. 构

高效管理你的Linux系统: Debian操作系统常用命令指南

《高效管理你的Linux系统:Debian操作系统常用命令指南》在Debian操作系统中,了解和掌握常用命令对于提高工作效率和系统管理至关重要,本文将详细介绍Debian的常用命令,帮助读者更好地使... Debian是一个流行的linux发行版,它以其稳定性、强大的软件包管理和丰富的社区资源而闻名。在使用

龙蜥操作系统Anolis OS-23.x安装配置图解教程(保姆级)

《龙蜥操作系统AnolisOS-23.x安装配置图解教程(保姆级)》:本文主要介绍了安装和配置AnolisOS23.2系统,包括分区、软件选择、设置root密码、网络配置、主机名设置和禁用SELinux的步骤,详细内容请阅读本文,希望能对你有所帮助... ‌AnolisOS‌是由阿里云推出的开源操作系统,旨

Ubuntu系统怎么安装Warp? 新一代AI 终端神器安装使用方法

《Ubuntu系统怎么安装Warp?新一代AI终端神器安装使用方法》Warp是一款使用Rust开发的现代化AI终端工具,该怎么再Ubuntu系统中安装使用呢?下面我们就来看看详细教程... Warp Terminal 是一款使用 Rust 开发的现代化「AI 终端」工具。最初它只支持 MACOS,但在 20

windows系统下shutdown重启关机命令超详细教程

《windows系统下shutdown重启关机命令超详细教程》shutdown命令是一个强大的工具,允许你通过命令行快速完成关机、重启或注销操作,本文将为你详细解析shutdown命令的使用方法,并提... 目录一、shutdown 命令简介二、shutdown 命令的基本用法三、远程关机与重启四、实际应用