Go 找不到类型InteractionCallback,atom正在删除import语句

Go 找不到类型InteractionCallback,atom正在删除import语句,go,Go,我正在使用atom IDE,出于某种原因,每当我将其添加到导入时: github.com/nlopes/slack 并保存该文件,它将删除导入。所以我不知道为什么,但它没有在库中找到InteractionCallback类型 我从以下位置复制了此代码: 我得到这个错误: 未定义:InteractionCallback 如何判断我刚下载的库是否定义了类型?或者我引用的类型不正确?您需要指定InteractionCallback来自哪个包,在您的情况下,它的slack包-slack。Interact

我正在使用atom IDE,出于某种原因,每当我将其添加到导入时:

github.com/nlopes/slack

并保存该文件,它将删除导入。所以我不知道为什么,但它没有在库中找到InteractionCallback类型

我从以下位置复制了此代码:

我得到这个错误:

未定义:InteractionCallback


如何判断我刚下载的库是否定义了类型?或者我引用的类型不正确?

您需要指定InteractionCallback来自哪个包,在您的情况下,它的slack包-slack。InteractionCallback

请在您的终端中使用以下命令: go get-u github.com/nlopes/slack

然后尝试运行以下代码:

package main

import (
    "encoding/json"
    "fmt"
    "github.com/nlopes/slack"
)

func unmarshalSuggestionCallback(j string) (*slack.InteractionCallback, error) {
    callback := &slack.InteractionCallback{}
    if err := json.Unmarshal([]byte(j), &callback); err != nil {
        return nil, err
    }
    return callback, nil
}

func main() {
    callback,_:=unmarshalSuggestionCallback(`{"type":"callback"}`)
    fmt.Println(callback.Type)
}

一切都会正常工作,我已签入我的电脑

我在它前面加了slack,并添加了导入。我得到了相同的未定义错误:slack.InteractionCallback您能在哪里发布一段自包含的代码吗?导入包中的符号必须使用slack.InteractionCallback.奇怪的是,我使用dep sure-add将库添加到我的供应商文件夹中。当我在供应商文件夹中查看时,my dialog.go缺少这样的代码,默认情况下dep提取的是存储库的最新版本,而不是主分支。
package main

import (
    "encoding/json"
    "fmt"
    "github.com/nlopes/slack"
)

func unmarshalSuggestionCallback(j string) (*slack.InteractionCallback, error) {
    callback := &slack.InteractionCallback{}
    if err := json.Unmarshal([]byte(j), &callback); err != nil {
        return nil, err
    }
    return callback, nil
}

func main() {
    callback,_:=unmarshalSuggestionCallback(`{"type":"callback"}`)
    fmt.Println(callback.Type)
}