Modern.js Module 开发指南:环境准备与基础概念解析
前言
Modern.js 是一个现代化的前端开发解决方案,其中的 Module 功能模块为开发者提供了构建高质量 npm 包的强大工具。在开始使用 Modern.js Module 之前,我们需要做好充分的准备工作,并理解一些基础概念。本文将详细介绍这些预备知识。
开发环境配置
Node.js 环境要求
Modern.js Module 要求开发者使用 Node.js 16.0.0 或更高版本。选择长期维护版本(LTS)是明智之举,因为这些版本经过充分测试,稳定性更有保障。
对于多项目开发的场景,建议使用版本管理工具:
- Mac/Linux 用户:推荐使用 nvm (Node Version Manager)
- Windows 用户:可以使用 nvm-windows
这些工具允许你在不同项目间快速切换 Node.js 版本,满足不同项目的版本需求。
包管理器选择
安装 Node.js 后,默认会附带 npm (Node Package Manager)。除了 npm 外,Modern.js 推荐使用 pnpm 作为包管理工具,它提供了更快的安装速度和更高效的磁盘空间利用。
安装 pnpm 非常简单:
npm install -g pnpm
npm 包基础概念
什么是 npm 包
npm 包是 JavaScript 的代码模块,可以通过 npm 注册表(npm Registry)进行发布和共享。一个 npm 包项目的核心是 package.json
文件,它包含了项目的元数据和依赖信息。
创建 npm 包项目的基本步骤:
- 新建项目目录
- 执行
npm init
命令 - 填写项目信息
生成的 package.json
文件示例:
{
"name": "my-package",
"version": "1.0.0",
"description": "示例 npm 包",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"license": "MIT"
}
依赖管理
npm 包可以依赖其他包,这些依赖分为两类:
- 生产依赖(dependencies):项目运行时必需的依赖
- 开发依赖(devDependencies):仅在开发和测试时需要的依赖
添加依赖的方式:
# 添加生产依赖
npm install package-name
# 或
pnpm add package-name
# 添加开发依赖
npm install package-name --save-dev
# 或
pnpm add package-name -D
依赖版本遵循语义化版本控制(SemVer),格式为 主版本号.次版本号.修订号
。
Modern.js Module 配置文件
Modern.js Module 使用 modern.config.ts
(或 .js
) 文件进行配置。基本配置如下:
import { moduleTools, defineConfig } from '@modern-js/module-tools';
export default defineConfig({
plugins: [moduleTools()],
buildPreset: 'npm-library',
});
defineConfig
函数提供了类型提示支持,但不是必须的。你也可以直接导出配置对象:
import { moduleTools } from '@modern-js/module-tools';
export default {
plugins: [moduleTools()],
buildPreset: 'npm-library',
};
进阶概念
包入口点
package.json
中的 main
和 module
字段定义了包的入口:
main
:CommonJS 模块入口module
:ES 模块入口(供打包工具如 webpack 使用)
现代打包工具会优先使用 module
字段指定的入口。
脚本生命周期
package.json
的 scripts
字段支持定义各种脚本命令,包括:
- 常规脚本:
npm run script-name
- 前置/后置脚本:
prescript-name
和postscript-name
会自动在对应脚本前后执行 - 特殊生命周期脚本:如
prepare
,prepublishOnly
等
peerDependencies
当你的包是另一个主包的插件时,可以使用 peerDependencies
声明与主包的版本兼容性,而不将其作为直接依赖。
总结
在开始使用 Modern.js Module 开发 npm 包前,确保:
- 安装了正确的 Node.js 版本
- 选择了合适的包管理器(推荐 pnpm)
- 理解了 npm 包的基本结构和依赖管理
- 熟悉 Modern.js 的基本配置方式
掌握这些基础知识后,你将能够更顺利地使用 Modern.js Module 进行开发工作。