在文本/模板包中,开发人员可能会遇到需要在范围操作之前访问管道值或利用传递给执行的父/全局管道。本文深入探讨了这一要求,提供了解决方案并研究了潜在的方法。
使用 $ 变量(推荐)
根据文本/模板文档,“$”最初指的是提供给 Execute 的数据参数,即起始点值。因此,可以使用 $.Path 访问外部作用域,如 @Sandy 所建议的。
const page = `{{range .Files}}<script src="{{html $.Path}}/js/{{html .}}"></script>{{end}}`
自定义变量方法(遗留答案)
或者,a可以引入变量将值传递到范围范围内,如下所示:
const page = `{{$p := .Path}}{{range .Files}}<script src="{{html $p}}/js/{{html .}}"></script>{{end}}`
这种方法允许变量命名和范围管理具有更大的灵活性。然而,强烈建议使用“$”,因为它简单又优雅。
以上是如何在Go模板中访问范围内的父/全局管道?的详细内容。更多信息请关注PHP中文网其他相关文章!