由于某种原因,我的模板不工作,我不知道为什么。的价值 。是一个映射[字符串] UpFile其中UpFile是一个结构与Path()方法没有参数。这里是模板的相关部分:
{{ range $key, $value := . }}
<a href="{{ $value.Path }}">{{ $key }}</a>
{{ end }}
该模板在变量$ value没有调用Path()的情况下工作。我还测试了对Path的调用时的值。是UpFile,它的工作。 go doc在模板上表示调用变量上的方法很好。模板编译并服务,但是范围内没有任何内容被输出。当我省略对Path()的调用时,我得到一串字符。谢谢参观。
编辑:使用UpFile中的字段而不是Path方法提供预期的输出。仍然不明白为什么呼叫路径不起作用。
谢谢,我最终将方法改为 func(f UpFile)Path()string {return f.path} 而不是更改地图。 –