一、文件复制

将src目录下的style.css文件复制一份,到dist目录下。

二、文件压缩

文件压缩就是把我们书写的代码中的空格和注释进行删除,这样我们体积会变小,当我们上线到服务器时,给服务器造成的压力就会减小,从而提升传输速度效率。

三、案例:将src目录下的style.css文件复制一份,到dist目录下,并且将复制后的文件压缩和更名为style.min.css。

// 导入fs模块
const fs = require('fs')
// 导入path模块
const path = require('path')
//把 src/style.css 复制到dist/目录下
const dist = path.join(__dirname,'dist')
//读取文件内容
fs.readFile('./src/style.css',(err,data) => {
//如果读取的路径不对,或者文件不存在,将抛出异常if (err) {throw err}else
//如果读取成功,就将数据以我们的正常字符串的形式展示出来{console.log(data.toString());}//确保dist目录存在//判断如果不存在dist目录,我们就创建一个dist目录if (!fs.existsSync(dist)) {fs.mkdirSync(dist)}//对文件进行压缩:将无用的注释或空格去掉//      css的注释样子:  /* 注释的内容 */ //使用replace()方法将需要替换的内容选中,替换成空字符串//使用正则表达式:匹配空白和/**/  空白是\s, /*符号需要使用\进行转移,g表示全局var mydata = data.toString().replace(/\s+/g,'').replace(/\/\*{1,2}[\s\S]*\*\//g,'')//将读取到的内容写入到目标文件,并改名为style.min.cssfs.writeFile(dist+'/style.min.css',mydata,(err) => {if (err){throw err}else{console.log('写入成功');}})
})

目录结构

(12)Node.js核心模块fs—实现文件复制和压缩相关推荐

  1. (10)Node.js核心模块—fs文件系统之目录操作

    一.创建目录 // 引入fs模块 const fs = require('fs') //创建目录(文件夹) //语法:fs.mkdir('目录路径',回调函数) fs.mkdir('./d1', (e ...

  2. (11)Node.js 核心模块fs – 同步函数( synchronization )

    一.介绍图 再执行程序1时,把1.1和1.2丢到事件队列中,去异步执行,这样提高了效率,让执行速度更快. 如果使用同步,需要等待程序1完全执行完成后,才能去执行程序2. 二.同步函数 • 在主程序中自 ...

  3. nodejs核心模块fs删除文件_用 NodeJS 重命名系统文件

    作者:Nick Major 翻译:疯狂的技术宅 原文:https://coderrocketfuel.com/article/how-to-rename-a-system-file-using-nod ...

  4. nodejs(五)node引入核心模块fs

    前面我们说ndoe引入自己的模块,相对路径要加 './',否则就会根据名字去引入核心模块,nodejs文件读写的核心模块是fs(file-system),引入方法: var fs = require( ...

  5. 前端基础-Node.js核心模块的使用

    第2章 核心模块的使用 2.1.1 FS模块 node核心模块之一,用于操作文件: 中文手册 : http://nodejs.cn/api/fs.html 文件读写 // 引入模块 var fs = ...

  6. (14)Node.js 核心模块—http

    一.核心模块 - http模块介绍 • http 模块可以发布 web 服务,在没有学习http模块之前,我们都是用tomcat,nginx等服务器. • 使用之前,通过 require 引入 • 官 ...

  7. Node.js:模块查找,引用及缓存机制

    1. Node.js的模块载入方式与机制 Node.js中模块可以通过文件路径或名字获取模块的引用.模块的引用会映射到一个js文件路径,除非它是一个Node内置模块.Node的内置模块公开了一些常用的 ...

  8. Node.js文件系统模块——读写文件操作

    文章目录 前言 一.导入fs模块 1.readFile() && readFileSync() 2.writeFile() && writeFileSync() 3.a ...

  9. 模块加载及第三方包:Node.js模块化开发、系统模块、第三方模块、package.json文件、Node.js中模块的加载机制、开发环境与生产环境、cookie与session

    1.Node.js模块化开发 1.1 JavaScript开发弊端 JavaScript 在使用时存在两大问题,文件依赖和命名冲突. 1.2 软件中的模块化开发 一个功能就是一个模块,多个模块可以组成 ...

最新文章

  1. 转载 - 10个基于jQuery实现的漂亮网站赏析
  2. 信标节能电路模块第二版本调试-无线充电-2021-3-21
  3. python用pil图像放大缩小_python使用PIL缩放网络图片并保存的方法
  4. Code Issues 2,637 Pull requests 0 Projects 1 Wiki Security Insights Settings 使用filter node快速找到XML f
  5. Loj #149. 01 分数规划(01分数规划模板题)
  6. 训练和测试数据的观察
  7. 数据结构与算法-java笔记一 更新中
  8. Android底层开发
  9. 6.S081 Xv6 Lab 2: system calls
  10. 术语-PM:PM/项目管理 百科
  11. 如何利用matlab循环读取文件夹中的文件
  12. 常见未授权访问漏洞总结
  13. js-变量、数据类型、数据类型转换
  14. 服务器不能读取无线网卡,无线网卡无法获得IP地址的解决方案
  15. MySQL优化系列12-MySQL分区表
  16. 基本概念的理解与讨论
  17. 英读廊——拔了电源插头为什么要等三十秒再重插?
  18. HTML怎么像是下划线、穿越文字的横线以及上划线
  19. prometheus联邦集群
  20. 十月最新,小红书面试经历,问答超详细!

热门文章

  1. 跟左神学算法2 排序相关
  2. 希尔排序java实现
  3. 陈松松:三种方式教你打造一个行业内10万视频播放量
  4. java 空心菱形
  5. pyDes vs pycrypto
  6. 好程序员分享使用JavaScript正则表达式如何去掉双引号
  7. webpack学习(四) -- css tree shaking
  8. 大数据新手之路四:联合使用Flume和Kafka
  9. java开发中常用到小方法
  10. Oauth2.0认证---授权码模式