我使用的是atom IDE,出于某种原因,每当我将其添加到导入中时:
"github.com/nlopes/slack">
并保存文件,它将删除导入。所以我不知道为什么,但它在库中找不到InteractionCallback类型?
我从示例中复制了此代码:
func unmarshalSuggestionCallback(j string) (*InteractionCallback, error) {
callback := &InteractionCallback{}
if err := json.Unmarshal([]byte(j), &callback); err != nil {
return nil, err
}
return callback, nil
}
我得到这个错误:
未定义:交互回调
如何判断我刚刚下载的库是否定义了类型?或者我引用的类型不正确?
请在您的终端中使用此命令:转到-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)
}
一切都应该正常,我已经检查了我的电脑
您需要指定InteractionCallback
来自哪个包,在您的情况下是它的备用包-slack.InteractionCallback