惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

量子位
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
F
Fortinet All Blogs
博客园 - 聂微东
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Hugging Face - Blog
Hugging Face - Blog
V
Visual Studio Blog
小众软件
小众软件
有赞技术团队
有赞技术团队
雷峰网
雷峰网
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
AWS News Blog
AWS News Blog
C
Cisco Blogs
美团技术团队
T
Threat Research - Cisco Blogs
C
CERT Recently Published Vulnerability Notes
人人都是产品经理
人人都是产品经理
宝玉的分享
宝玉的分享
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
酷 壳 – CoolShell
酷 壳 – CoolShell
Stack Overflow Blog
Stack Overflow Blog
W
WeLiveSecurity
D
DataBreaches.Net
博客园 - 司徒正美
Blog — PlanetScale
Blog — PlanetScale
IT之家
IT之家
云风的 BLOG
云风的 BLOG
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Simon Willison's Weblog
Simon Willison's Weblog
Google DeepMind News
Google DeepMind News
T
The Blog of Author Tim Ferriss
Know Your Adversary
Know Your Adversary
NISL@THU
NISL@THU
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
The Cloudflare Blog
Vercel News
Vercel News
月光博客
月光博客
T
Tailwind CSS Blog
H
Help Net Security
aimingoo的专栏
aimingoo的专栏
P
Proofpoint News Feed
Application and Cybersecurity Blog
Application and Cybersecurity Blog
Spread Privacy
Spread Privacy
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Cisco Talos Blog
Cisco Talos Blog
Microsoft Security Blog
Microsoft Security Blog
V
V2EX
WordPress大学
WordPress大学
Cyberwarzone
Cyberwarzone
Recent Announcements
Recent Announcements

博客园 - 柒零壹

Ubuntu 24.04 安装最新版podman@5.6.1 [转贴]在前端如何玩转 Word 文档 一个命令行参数解决open-webui镜像启动失败的问题(huggingface网站访问失败问题) Go Template 常用疑难知识点 从数据库中随机选取数据(基于golang,xorm) go-ElasticSearch TypedClient学习笔记 golang用pgx查询数据时如何将查询结果方便的放入Map中 go语言如何使用elastic官方客户端go-elasticsearch/v8实现数据批量更新 【转】网络常用颜文字(文字表情) GoCV下实现多图片单窗口内同时显示 解决GoCV/OpenCV不支持中文的问题 golang中xorm自动维护表结构自动导入数据的实现 [golang] gin的中间中调用Abort方法导致的带附件的表单提交时,浏览器报net::ERR_CONNECTION_RESET错误的原因及解决方法 [golang]filepath.Glob的缺陷,不支持多级目录 浏览器中javascript简易实现json数据保存到客户端 [转]Three.js做一个酷炫的城市展示可视化大屏 [转]css实现不同样式的tooltip对话框小三角 [原]升级项目到Rails7.0.3,使用自己手动方案编译打包css及js资源 puma web server如何监听所有IP地址
最简单搭建前端轻量级项目开发服务
柒零壹 · 2022-10-04 · via 博客园 - 柒零壹

  本文讨论了如何搭建一个简单的前端项目开发服务,这个服务要实现以下几点:

  1. Javascript的打包压缩;
  2. scss的编译打包压缩;
  3. 简单文件http服务;
  4. 监测文件变化自动刷新浏览器;
  5. 零配置(当然打包的入口文件不算在内),不需要本地安装node模块(全局安装即可)。

  要实现这个目标,必须请出四剑客,当然,这些功能都是这些软件实现的:

  • esbuild,实现js的快速打包
  • sass,实现sass的编译打包
  • browser-sync,实现http服务,监测文件变化刷新浏览器
  • concurrently,集成上面三位,使得我们可以启动一个服务程序,而不是三个!

  首先,全局安装四剑客:

npm install -g esbuild 
npm install -g sass
npm install -g browser-sync
npm install -g concurrently

  安装完成后,你可以查看一下各位的软件版本号,验证是否成功安装了。

  其次,创建接口文件,app.js, app.scss。

# app.js
//
import("./scripts/xxx");
......
import("./scripts/main");
@import './styles/xxx.scss';
......
@import './styles/main.scss';

  最后,终于,可以编写我们的服务脚本了:

concurrently "esbuild ./src/app.js --outfile=./public/app/app.min.js  --bundle --minify --sourcemap --watch" \
  "sass --watch --style=compressed  ./src/app.scss:./public/app/app.min.css" \
  "browser-sync start --s --port 8000 --listen 0.0.0.0 --no-ui --no-open --files **/*.html  --files public/app/*"

各项参数,这里就不在赘述了,如有需要,请大家自己去查看文档。

启动这个脚本,可以愉快地开发调试了。