npm 包 module-deps-sortable 使用教程

阅读时长 6 分钟读完

简介

module-deps-sortable 是一个基于 browserify 的打包工具,它可以对模块进行依赖关系排序,并生成符合依赖顺序的 js 代码。该工具适用于前端项目中的模块化开发。

安装

使用 npm 进行安装:

使用

命令行使用

在命令行中使用 module-deps-sortable :

其中 main.js 是你主入口文件路径,bundle.js 是输出文件路径。

API 使用

使用 module-deps-sortable 的 API 进行打包:

-- -------------------- ---- -------
----- ------ - -------------------------------

----- ---- - -
    -------- ------------
    -------- ----------
    ------ ----
-

------------
    ------------ -------- ----- -
        ----------------------- ------------
    --
    ----------------------------------------
展开代码

其中 opts 是配置项,包括 entries(入口文件)、basedir(基目录)、debug 等选项,可根据需要进行设置。

示例

假设我们有如下文件结构:

-- -------------------- ---- -------
--------
--- -------
--- ----
-   --- ----
-   --- ----
-   --- ----
--- -------------
    --- ----
        --- --------
        --- ------------
展开代码

主入口文件 main.js 代码如下:

模块文件 lib/a.js 代码如下:

模块文件 lib/b.js 代码如下:

模块文件 lib/c.js 代码如下:

安装 module-deps-sortable 后,在命令行中运行:

或者在项目中使用 module-deps-sortable 的 API 进行打包:

-- -------------------- ---- -------
----- ------ - -------------------------------
----- -- - -------------

----- ---- - -
    -------- ------------
    -------- ----------
    ------ ----
-

------------
    ------------ -------- ----- -
        ----------------------- ------------
    --
    ----------------------------------------
展开代码

都会生成一个符合依赖顺序的 bundle.js 文件,内容如下:

-- -------------------- ---- -------
--------- -------------- ------ -------- -
    --- ----------- - ------ ------- -- ----------- - ------- - -----
    --- ------------- - ------- -- -------------- - ----------------------- -- -
        --- --- - ----------- -- -- -- - ----- --- -------------- -------- --- --- --------- --------- -- ------------------------- ---
        -------- - -- -- --------
        ------ ----
    -- - -----
    -------- ---------------- ------- -
        -- -------------- -
            --- ------ - ----------- - - -------- -- --
            ------------------------------------- ----------- -
                --- -- - --------------------
                ------ ------------- - -- - ---
            -- ------- --------------- ------ ---------------
        -
        ------ --------------------
    -
    --- ---- - - -- - - --------------- ---- -
        --- ------ - -----------
        -- ----------- -
            --- ---- - - -- - - ----------------- ---- -
                -- --------------------- ---------
                -------------------------
            -
        -
    -
    -------- ------------------------ ------- -
        ------ ------ - - -------- -- -- ---------- ---------------- ---------------
    -

    -- ------

- ----------------------------------------------------------- --------
----------------------------------------------------------------------------------
展开代码
纠错
反馈

纠错反馈