5个JavaScript工具

71 阅读3分钟

JavaScript生态系统的发展速度很快,你知道你的工具集在你选择它的时候就会被取代!你不可能跟上所有的库、框架和技术。

要跟上所有的库、框架和技术是不可能的,但你可以观察行业内的趋势和运动方向。React.js、Vue.js、Svelte、Node.js和Express.js在2021年将继续流行,但一些有趣的辅助工具正在涌现出来。

以下是我对2021年的首要选择。但请不要依赖我的意见。请自己评估它们

Rollup.js

Rollup.jsSvelte的作者Rich Harris的下一代JavaScript模块捆绑器。它将小块的代码编译成较大的单一文件,并包括。

  • 一个插件架构

    核心系统可以通过插件进行扩展,如Babel ES5转译、TypeScript集成、ESLinting、Terser最小化,甚至是CSS处理。

  • 模块兼容性

    Rollup.js支持标准的ES6模块,但基于Node的CommonJSrequire() 模块可以用插件解析。

  • 树形震荡

    代码被静态分析以排除不使用的变量、函数和方法。因此,你可以导入一个大的库,但只有你正在使用的功能会被包含在最终的捆绑中。

  • 代码拆分

    Rollup可以将代码分割成大块,用于动态(按需)加载或多个入口点。

Rollup.js可以从命令行、npm 脚本和一般的任务运行器(如Gulp)中执行,无论是否有观察选项。

可以为更复杂的配置定义一个rollup.config.js 文件。举例来说。

// rollup.config.js

// CommonJS plugin
import commonjs from '@rollup/plugin-commonjs';

export default {

  // primary source entry script
  input: './src/main.js',

  // output script and format
  output: {
    file: './build/main.js',
    format: 'iife'
  },

  // plugins
  plugins: [
    commonjs()
  ]

};

Rollup.js首次出现在2018年,但由于其速度和简单性,它的势头一直很好。你可能已经在Snowpack中使用了它而没有意识到。

Snowpack

Snowpack是一个快速的前端构建工具,是webpack和Parcel等重量级选项的直接竞争者。其优点包括

  • 即时启动
  • 带有缓存的单一构建
  • 热模块重载
  • 数十种插件
  • 内置支持ES6模块、CommonJS模块、TypeScript、Svelte、React、JSX、CSS模块

Snowpack可以自动构建资产。你可以把它作为一个开发依赖项安装到任何项目中。

npm install --save-dev snowpack

然后启动一个开发服务器。

npx snowpack dev

这将在你的浏览器中打开默认的index.html 文件。所有的页面都被扫描为JavaScript和CSS文件,这些文件被捆绑在单个资产中。

一个最终的生产网站可以在build 目录中创建,并带有。

npx snowpack build

A snowpack.config.js配置文件可以定义插件和进一步的选项。

开发工作一直很迅速,Snowpack 3.0版于2021年1月推出。根据该网站的说法,"一旦你尝试了它,就不可能再回到其他东西上了"。

Rome

现代开发需要你安装、配置和学习一系列具有不同方法和技术的工具。Rome旨在通过为HTML内容、CSS和JavaScript提供一个linter、编译器、bundler、文档生成器、formatter、测试运行器和minifier来统一前端开发工具链。从本质上讲,它是一个零依赖性的软件包,取代了webpack、Babel、ESLint、Prettier、Jest和其他。

在整个2020年,Rome一直在积极开发,在写这篇文章的时候,只有linting被支持。然而,该项目已经获得了相当大的关注,最近的筹资呼吁已经超过了其10万美元目标的四分之一以上。

如果Rome能够成功实现其目标,它可能会成为你唯一需要的工具。

继续阅读《2021年需要关注的5个JavaScript工具》(SitePoint)。