Я довольно новичок, чтобы пойти, может кто-нибудь помочь мне диагностировать эту проблему.В чем причина этой паники?
type ValidationStatus struct {
Passed bool
Errors map[string]*ValidationError
}
// ...
status := ValidationStatus{Passed: true}
// ...
status.Passed = false
fmt.Println(reflect.TypeOf(typeField.Name)) // string
fmt.Println(reflect.TypeOf(validationError)) // *validation.ValidationError
status.Errors[typeField.Name] = validationError // Panic triggered here.
validationError
определен в пакете проверки. Этот код находится в том же файле, что и структура.
Это первый раз, когда я столкнулся с такой проблемой, я думаю, что могу использовать карту неправильно, но потом я не понимаю, почему это не вызвало бы ошибку компиляции, а может быть, проблему с типом? Любые указатели для решения этой проблемы будут высоко оценены.
Для дальнейшего использования, если вы спрашиваете о паника, то обязательно включите фактическое сообщение о панике. –
См. Https://blog.golang.org/go-maps-in-action для ознакомления с картами в Go. – dyoo