Тип InteractionCallback не найден, и атом удаляет оператор импорта - PullRequest
0 голосов
/ 28 октября 2018

Я использую атом 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
}

Iполучаю эту ошибку:

undefined: InteractionCallback

Как узнать, что только что загруженная мной библиотека имеет определенный тип?Или я неправильно ссылаюсь на тип?

Ответы [ 2 ]

0 голосов
/ 28 октября 2018

Пожалуйста, используйте эту команду в вашем терминале: 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)
}

Все должно работать нормально,Я проверил в моем ПК

0 голосов
/ 28 октября 2018

Вам необходимо указать, из какой упаковки InteractionCallback взято, в вашем случае его слабый пакет - slack.InteractionCallback

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...