Kno*_*ing 3 go visual-studio-code vscode-settings
为什么不能用golang扩展将这些代码行保存在vscode中
package app
import (
"fmt"
)
//this is just func
func TestingHello(){
fmt.Println("Hissssss")
}
Run Code Online (Sandbox Code Playgroud)
package app保存时,只有剩余部分和剩余部分在vscode中删除。
Blu*_*eel 27
在 settings.json 中配置 editor.formatOnSave 和 editor.codeActionsOnSave :
"[go]": {
"editor.formatOnSave": false,
"editor.codeActionsOnSave": {
"source.organizeImports": false
},
},
"go.formatTool": "gofmt",
Run Code Online (Sandbox Code Playgroud)
Ped*_*dro 10
默认情况下,格式工具在 settings.json 中设置为“goreturns”,将其更改为“fmt”:
{
"go.formatTool": "gofmt"
}
Run Code Online (Sandbox Code Playgroud)
现在您可以评论导入:
import (
"fmt"
// "reflect"
// "math/rand"
)
Run Code Online (Sandbox Code Playgroud)
Ctrl+Shift+P --> 配置语言特定设置
"editor.insertSpaces": false,
"editor.formatOnSave": **false,**
"editor.codeActionsOnSave": {
"source.organizeImports": **false**
}
}
}
Run Code Online (Sandbox Code Playgroud)
我有一个类似的问题,是由于方法名称的大小写不正确造成的。
在下面的代码中import "fmt"会消失。
package main
import "fmt"
func main() {
fmt.println("hello world")
}
Run Code Online (Sandbox Code Playgroud)
解决方案我应该打电话给Println NOT println!注意大写P。更改后goreturns添加导入而不是删除它。
这看起来很奇怪。
我可以理解导入消失(如问题 748中),因为goreturns( github.com/sqs/goreturns)删除了未使用的导入。但这不应该适用于你的情况。
但如果几乎所有内容都消失了,则意味着文件无法保存并恢复到其原始内容。
也许另一个进程正在保留该文件的句柄,从而阻止保存操作继续进行。
小智 6
基本上,您的formatOnSave处于打开状态,这会导致此问题。
要禁用它,请转到命令面板(Ctrl + Shift + P)并输入“配置特定于语言的设置”,然后查找Go。
现在,您应该看到一个json文件,您可以在其中添加以下设置:
“ editor.formatOnSave”:否。
如果您只是修改了go的设置,这就是json文件的样子:
{
"window.zoomLevel": 1,
"[go]": {
"editor.formatOnSave": false,
}
Run Code Online (Sandbox Code Playgroud)
}
希望能有所帮助