当前位置: 首页 > 知识库问答 >
问题:

将node.js文件观察者与JetBrains WebStom一起使用

梁巴英
2023-03-14

我已经在我的项目中使用了几个星期了。我真的很喜欢它!

我使用的是JetBrains WebStorm IDE,所以我按照Prettier项目网站上的以下说明,了解如何在WebStorm中设置文件查看器:https://prettier.io/docs/en/webstorm.html#using-文件观察程序

然后,每次我保存一个JavaScript文件时,Prettier都会自动运行在它上面,WebStorm会在Prettier保存文件后立即向我显示更改。

我希望我的团队中的每个人都使用美丽的人,但不是每个人都使用网络Storm。有些人使用的编辑器不能很容易地用美丽的人配置。所以,我按照美丽的项目网站上的这些说明,了解了如何在我的package.json文件中设置文件观察者作为npm脚本:https://prettier.io/docs/en/watching-files.html

"scripts": {
  "prettier-watch": "onchange '**/*.js' -- prettier --write {{changed}}"
}

正如文档中建议的那样,我使用on眼下包作为我的文件监视程序,并且我在WebStorm中禁用了文件监视程序,因为我不需要漂亮的人连续运行两次。

问题是,当我在WebStorm中保存一个文件时,< code>onchange包运行得更漂亮了,但我在编辑器中看不到更改,即使当我用鼠标光标切换出然后回到文件窗口时也是如此。当我尝试进行新的更改并再次保存时,我从WebStorm收到了“文件缓存冲突”警告消息:“内存和磁盘中的已被更改。保持内存变化,显示差异,加载文件系统变化”

如果我选择“加载文件系统更改”,则Prettier保存的版本将成功加载。但每次保存时都必须看到这个对话框,这很烦人。我希望这些更改能自动反映在WebStorm中。

似乎唯一的方法是使用 WebStorm 的内置文件观察器,但是我没有一种简单的方法来为我的同事设置 Prettier,而不会强迫他们手动安装自己的独立解决方案。

所以我的问题是:我如何使用通用的node.js文件观察者作为npm脚本,在保存后对我的文件进行更改,并在没有此对话框的情况下自动重新加载这些更改?

共有2个答案

单于扬
2023-03-14

也许你可以尝试在webstorm的“系统设置”窗格中使用“安全写入”设置

潘琨
2023-03-14

我也面临着同样的问题,毫无疑问,对话真的很烦人,下面的步骤最终帮助我解决了这个问题。

    < li >转到Webstorm/Phpstorm设置/首选项 < li >打开文件监视器的设置:< code >/Tools/File Watchers/ < li >双击您的文件监视器,即本例中的< code >更漂亮 < li >这将打开一个编辑观察器的模式窗口。取消选中< code >自动保存编辑过的文件以触发观察器

根据我的理解,取消选中此选项只会在手动保存文件时运行文件观察者,并将帮助您在每次更改时摆脱该模式的过多外观。在这种情况下,请不要忘记手动保存文件,以继续享受美丽。

 类似资料:
  • 问题内容: 我有以下UseCase: A创建一个聊天并邀请B和C-在服务器A上创建一个文件。A,B和C将消息写入此文件。A,B和C读取了此文件。 我想在服务器上创建一个文件并观察该文件,如果其他人向该文件中写入内容,则将新内容与websockets发送回去。 因此,我的node.js应用程序应观察到此文件的任何更改。 如何观察文件更改? 在不锁定文件的情况下使用节点js可以实现吗? 如果无法使用文

  • 我正在使用mat-table,并试图将MatTableDataSource与observable一起使用(我从web服务获取数据),但我不知道如何将MatTableDataSource配置为使用observable而不是数组。 这个问题的唯一解决方案是订阅ngOnInit方法中的observable并在新数据到达时始终创建新的MatTableDataSource吗?

  • 问题内容: 我一直在阅读Observer模式,以保持UI处于最新状态,但仍然看不到它的用途。即使在我的特定对象中通知了我的MainActivity然后运行update();方法我仍然无法使用Pet对象来获取更新值,因为该对象是在Oncreate中创建的…而我只是无法创建新对象,因为那时变量会有所不同..这是我的实施,它似乎不起作用。 观察者/ MainActivity 可观察/宠物 问题答案: 首

  • 我们支持使用分布式消息系统,例如 etcd 来保持多个Casbin执行器实例之间的一致性。 因此,我们的用户可以同时使用多个Casbin 执行器来处理大量的权限检查请求。 与策略存储 adapters类似,我们没有把watcher的代码放在主库中。 任何对新消息系统的支持都应该作为watcher程序来实现。 完整的Casbin watchers列表如下所示。 欢迎任何第三方对 watcher 进行

  • 我想知道用模板observer配置的observer模式是否比常规observer模式更方便。模板观察者的概念是一个可观察的类,它具有配置为模板的特定观察者类型。作为一个例子,我将展示一个普通的观察者,并将其与模板观察者进行比较。 正常观察者模式 正常观察者界面: 对于实现NormalObserver接口的每个类,更新函数都是相同的。如果要实现特定的观察者,例如具有不同更新参数的观察者,这会导致问

  • 问题内容: 我正在使用最后一个selenium,一些网站随机弹出消息,停止正常的测试过程 我在想的是,我需要做IAlert as Observer模式,以捕获警报并接受它,并从其停止处理弹出窗口的点继续进行测试。 IAlert代码: 主要问题是如何执行它,或者是否有更好的方法来处理随机弹出窗口? 谢谢 问题答案: 由于在尝试执行其他操作时弹出窗口很重要,因此我建议采用以下方法:EventFirin