В основном у меня есть объект, который нужно передать интерфейсу. Я зарегистрировал его в бэкэнд, и он не был нулевым, но в интерфейсе, когда я его предупреждал, он становится нулевым.Шаблон проходит не-nil объект становится nil in frontend
...
presentation := &presentationStruct {
Object: object,
}
log.Errorf("%v", object) // not null
template.Execute(writer, presentation)
...
// but it becomes null here
alert({{.Object}})
Объект представляет собой тип
map[string]map[string]struct {
[]float32
map[int][]struct {
string
float32
}
}
Является ли это потому, что тип является слишком сложным?
Вы не должны оставлять '{{.Object}}' это не волшебство. Вам нужно, чтобы в вашем шаблоне выполнялись операции над ним, прокручивайте карту, чтобы вы могли отображать фактический текст, а не структуру. Вы можете, например, сделать что-то вроде этого '{{.Object ['foo'] ['bar'] [0]}}' (Это просто пример, вам нужно получить доступ к данным, содержащимся в вашем объекте) – Depado
@ Depado Я знаю, что мне нужно отобразить фактический текст, но если объект имеет нулевое значение, как вы ссылаетесь на что-то – Haha
@ Dave C см. Этот пример http://play.golang.org/p/s8hOuzI-3F – Haha