package.json 文件中的星号 (*) 有何用途?

What purpose does the Asterisk (*) serve in package.json files?

我只想对 node.js 项目中的暂存文件使用 lint-staged 到 运行 挂钩。 docs建议在package.json文件中添加如下代码;

{
  "lint-staged": {
    "*": "your-cmd"
  }
}

我还在另一个代码库的其他地方看到了以下代码;

"lint-staged": {
        "**/*": "prettier --write --ignore-unknown"
    }

星号有什么作用?我不认为它只是一个占位符。感谢您的帮助。

作为 the readme says,这些是 glob 模式。

"*": "your-cmd"

将匹配任何文件(* 根据定义匹配任何文件)

"**/*": "prettier --write --ignore-unknown"

will match:

  • ** - “≥ 0 个字符跨越目录边界”,后跟
  • / - 目录边界,后跟
  • * - 任何东西