微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在没有警告/同意的情况下自动添加代码行

如何解决在没有警告/同意的情况下自动添加代码行

**编辑标签以反映问题的原因

我已经使用 Node.js 工作了大约 3 个月的时间,今天我在做一个项目时突然在客户端出现导入错误,即使我没有触及那里的任何代码自从我上次运行该程序以来。事实上,我所做的唯一更改是在服务器端,只是一些与导入无关的小重构。在疯狂地寻找我做了什么之后,我向上滚动以在 server/index.js 中看到这一行:

const { default: socket } = require('../client/src/socket.js');

这行不是我写的。它是在我没有询问甚至没有注意到它在那里的情况下添加的。我很确定我没有点击任何格式工具提示,它似乎无处不在,是导致中断的原因。

这不是我第一次遇到这种情况。我注意到偶尔会向我的项目中添加我从未要求过的代码。所以我有一些问题:

  • 这是 Node 的一个特性吗?如果是,是什么触发了它?
  • 当我使用 VScode 时,是不是 IDE 正在执行此操作?
  • 我如何阻止导致此问题的尝试和失败,以提供帮助?

谢谢。

解决方法

这不是 Node 的特性,但是一些 VSCode 扩展具有自动导入的功能。也许您的一个扩展程序添加了该行。为了防止它禁用您的 JavaScript 自动完成功能,linter 扩展。

,

这很可能是 VSCode 的内置 auto-imports。您可能输入了 socket 并选择了一个自动建议,其中包含Auto import from "../client/src/socket.js"

您可以使用设置 "javascript.suggest.autoImports": false 禁用它。

此外,如果您使用 Git 进行版本控制,请尝试使用 git add -p (-p for patch) 来一点一点地暂存您的更改,而不是整个文件。通过这种方式,您可以查看切片中的更改,并且您可能会发现这样的事情。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。