试图弄清楚为什么 eslint-watch 不能与 docker-compose 一起正确工作
Trying to figure out why eslint-watch doesn't work with docker-compose correctly
在过去的一天里,我一直在努力让我的前端在 docker 上工作,并且我已经将一些不正常的行为缩小到 eslint-watch 和 docker。我已经重新创建了我遇到的错误的最小工作 repo。
似乎在使用 docker-compose 时 linting 以某种方式交错(具体来说,docker-compose up
,docker-compose run
似乎工作正常)。相反,最后的控制台日志语句是交错的。我不确定它是什么,但根据我的阅读,我能给出的最佳解释是,出于某种原因,应该为 linting 打印出的日志消息没有从节点消息队列中清除。
我已经缩小了消息打印到 eslint watcher 文件的范围。如果我在此方法的末尾添加更多控制台日志,它会打印出 linting 正常,但它会错开我的日志(即最后执行的日志)。有趣的是,如果我再次保存它会刷新消息队列的其余部分,即打印出以前的日志。
要复制,请下载我的存储库 运行 docker-compose up
并编辑 test.js 文件并保存。查看终端中的日志以查找 linting。你会明白我的意思的。
我希望这足够描述,这是一个非常奇怪的错误,很难在问题中解释。
有什么办法可以真正解决这个问题吗?
终于明白了。 iterm of all things 是罪魁祸首。真奇怪。
反正我用的是 iTerm2 3.0.9。似乎在 iTerm2 3.0.12 (OS 10.8+) 中修复了此错误。
https://github.com/rizowski/eslint-watch/issues/94#issuecomment-261287265
在过去的一天里,我一直在努力让我的前端在 docker 上工作,并且我已经将一些不正常的行为缩小到 eslint-watch 和 docker。我已经重新创建了我遇到的错误的最小工作 repo。
似乎在使用 docker-compose 时 linting 以某种方式交错(具体来说,docker-compose up
,docker-compose run
似乎工作正常)。相反,最后的控制台日志语句是交错的。我不确定它是什么,但根据我的阅读,我能给出的最佳解释是,出于某种原因,应该为 linting 打印出的日志消息没有从节点消息队列中清除。
我已经缩小了消息打印到 eslint watcher 文件的范围。如果我在此方法的末尾添加更多控制台日志,它会打印出 linting 正常,但它会错开我的日志(即最后执行的日志)。有趣的是,如果我再次保存它会刷新消息队列的其余部分,即打印出以前的日志。
要复制,请下载我的存储库 运行 docker-compose up
并编辑 test.js 文件并保存。查看终端中的日志以查找 linting。你会明白我的意思的。
我希望这足够描述,这是一个非常奇怪的错误,很难在问题中解释。
有什么办法可以真正解决这个问题吗?
终于明白了。 iterm of all things 是罪魁祸首。真奇怪。
反正我用的是 iTerm2 3.0.9。似乎在 iTerm2 3.0.12 (OS 10.8+) 中修复了此错误。
https://github.com/rizowski/eslint-watch/issues/94#issuecomment-261287265