我不明白http://golang.org/pkg/text/template/ 中的文档段落
- The name of a key of the data, which must be a map, preceded
by a period, such as
.Key
The result is the map element value indexed by the key.
Key invocations may be chained and combined with fields to any
depth:
.Field1.Key1.Field2.Key2
Although the key must be an alphanumeric identifier, unlike with
field names they do not need to start with an upper case letter.
Keys can also be evaluated on variables, including chaining:
$x.key1.key2
这是我的测试代码,但失败了。代码:http : //play.golang.org/p/lbLJ4yoL2T。
var season = map[int]string{1: "spring", 2: "summer",
3: "autumn", 4: "winter"}
func main() {
const greeting = `Welcome, {{.Key}}`
t := template.Must(template.New("greet").Parse(greeting))
err := t.Execute(os.Stdout, season)
if err != nil {
fmt.Println(err)
}
}
输出
Welcome, template: greet:1:11: executing "greet" at <.Key>: can't evaluate field Key in type map[int]string
相关分类