scripty妙用

在monorepo项目中,随着子模块增多, 每个子项目都需要配置各自的package.json,并且大同小异,为了进一步提高配置效率,引入了scripty,自己写脚本,直接就可以用哦

1、安装

 npm install scripty --save-dev

2、使用

首先在根目录创建文件夹scripts/

分为两类「package 级别」与「workspace 级别」,并且分别放在两个文件夹内。这样做的好处在于,我们既可以在项目根目录执行全局脚本,也可以针对单个项目执行特定的脚本。

如下图所示

根目录的package.json改成如下

 "scripts": {
    "prepare": "scripty",
    "preinstall": "scripty",
    "clean": "scripty",
    "task:build": "scripty",
    "task:dev": "scripty",
    "task:lint": "scripty",
    "task:lintfix": "scripty"
  },
  "scripty": {
    "path": "./scripts/package"
  },

以task:dev为例,对应的就是./scripts/package/task/dev.sh 

子模块目录

  "scripts": {
    "precommit": "scripty",
    "start": "scripty",
    "build": "scripty",
    "eslint": "scripty",
    "eslint:fix": "scripty",
    "stylelint": "scripty",
    "stylelint:fix": "scripty",
    "lint": "scripty",
    "lintfix": "scripty"
  },
  "scripty": {
    "path": "../../scripts/workspaces"
  },

使用 chmod -R u+x scripts 命令使所有的 shell 脚本具备可执行权限, 否则会导致执行失败!!!! 

 

相关推荐

  1. linux | && 和 &的

    2023-12-15 03:56:02       41 阅读
  2. 【正则表达式的

    2023-12-15 03:56:02       57 阅读
  3. information_schema表的

    2023-12-15 03:56:02       41 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-15 03:56:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-15 03:56:02       100 阅读
  3. 在Django里面运行非项目文件

    2023-12-15 03:56:02       82 阅读
  4. Python语言-面向对象

    2023-12-15 03:56:02       91 阅读

热门阅读

  1. 一起看看StatusBarManagerService(三)

    2023-12-15 03:56:02       47 阅读
  2. 【C语言数据结构】拓扑排序(代码演示)

    2023-12-15 03:56:02       58 阅读
  3. android studio简易app实例

    2023-12-15 03:56:02       59 阅读
  4. [其他] GNome KDE / GTK GTK+ Qt / GDK / Glib

    2023-12-15 03:56:02       61 阅读
  5. yarn install或者 npm install 下载安装超时的解决办法

    2023-12-15 03:56:02       57 阅读
  6. Nacos的应用

    2023-12-15 03:56:02       52 阅读
  7. 什么?通过 Prometheus 编写巡检脚本

    2023-12-15 03:56:02       57 阅读
  8. Spring 框架有哪些缺点?

    2023-12-15 03:56:02       67 阅读
  9. 每日一题:Leetcode974.和可被k整除的子数组

    2023-12-15 03:56:02       55 阅读
  10. 如何选择适合的公共 DNS

    2023-12-15 03:56:02       47 阅读
  11. IP和DNS不在同一地区原因

    2023-12-15 03:56:02       60 阅读
  12. ubuntu 20.04.6 desk 安装 初始化

    2023-12-15 03:56:02       64 阅读
  13. 再探再报:SQL中的关联查询

    2023-12-15 03:56:02       36 阅读