【问题标题】:Nodemon - exclusion of filesNodemon - 排除文件
【发布时间】:2014-07-29 23:27:08
【问题描述】:

我想从 NodeMon 的监控中排除一些特定文件。我该怎么做?

我现有的配置:

nodemon: {
      all: {
        script: 'app.js',
        options: {
          watchedExtensions: ['js']
        }
      }

【问题讨论】:

  • 我想我应该编辑应用程序根目录中的.nodemon-ignore 文件...

标签: nodemon


【解决方案1】:

为了让NodeMon从监控中忽略一堆文件,你可以将它启动为

nodemon --ignore PATTERN [--ignore PATTERN2]

其中 PATTERN 是特定文件、目录或通配符模式的名称。确保如果您使用通配符,它​​会被转义。

例如

nodemon --ignore 'lib/*.js' --ignore README

或者,如果您想配置该行为,请尝试在当前工作目录或主目录中创建nodemon.json 文件。您可以通过在此配置文件中添加以下内容来配置忽略某些文件:

{   
    "ignore": ["lib/*.js", "README"] 
}

有关详细信息,请参阅https://github.com/remy/nodemon 的 README 文件。

【讨论】:

  • 对我没用,我需要使用没有简单引号的路径:nodemon --ignore public/ build.js 这可能是由于 Windows 中的法语键盘布局...
  • 对我不起作用。但我使用 npx 或 npm script.mybbe 的原因,
  • 在 Windows 上用单引号引用不起作用。双引号确实有效。
  • @LorenzMeyer,似乎可以在 powershell 上使用单引号正常工作,至少对于第一个变体。
  • 这在我的 package.json 中适用于我,因此只有在我对服务器进行更改时它才会重新启动。 "scripts": { "start": "nodemon --ignore public/*" }
【解决方案2】:

您可以在 package.json 文件中添加 nodemon 配置 例如:

{
  "name": "nlabel",
  "version": "0.0.1",
   // other regular stuff


  "nodemonConfig": {
    "ignore": ["public/data/*.json", "public/javascripts/*.js"]
  },


  "author": "@sziraqui",
  "license": "GPL-3.0"
}

键必须是“nodemonConfig”。忽略规则可以指定为全局数组或完整文件名

更多信息:https://github.com/remy/nodemon#packagejson

【讨论】:

  • 无法让任何版本的--ignore 工作,但确实如此。清洁溶液也是如此。
  • 我可以在终端上获取nodemon 中排除的文件/文件夹的信息吗?我刚看到 Nico 的回答,应该会有所帮助
  • @Timo 找不到适用于您的用例的任何 nodemon 配置。您可以使用ls 'your exlusions' && nodemon app.js(不能跨平台)。如果你愿意为它写代码,你可以监听 nodemon 'start' 或 'restart' 事件,并通过读取 nodemon 配置和扩展“ignore”数组中的 glob 模式来打印排除的文件。
【解决方案3】:

对我来说(Mac 和 nodemon 1.18.3),忽略整个目录的唯一方法是运行例如

nodemon --ignore "**/old/**"

带有双引号和**。配置文件不起作用。

我已经设置了这样的别名:

alias nm='nodemon server.js -i "**/old/**" -i "**/img/**"'

通过运行检查哪些文件被监控

DEBUG=nodemon:watch nodemon server.js -i "**/old/**" -i "**/img/**"

-i 是 --ignore 的替代品。使用 nodemon --help 查看可用参数

【讨论】:

    【解决方案4】:

    如果像我一样没有什么对你有用,请按照我的指示。

    不要在你的路径周围使用''(例如'login.json'是错误的)

    而且 CTRL + S 还不够,如果您希望在您的 packages.json 中进行更改,您需要关闭终端并再次使用命令 npm run devStart

      "scripts": {
        "devStart": "nodemon server.js --ignore login.json"
      },
    

    【讨论】:

      猜你喜欢
      • 2021-11-18
      • 2020-11-08
      • 2015-01-24
      • 2017-09-01
      • 2010-12-06
      • 2018-01-04
      • 1970-01-01
      • 2015-09-05
      • 2023-03-22
      相关资源
      最近更新 更多