Golang 템플릿의 파이프라인 이해
Golang 템플릿에서 파이프라인은 일련의 데이터를 조작하고 변환하는 명령입니다. 이러한 명령에는 기본 값, 함수 호출 또는 메서드 호출이 포함될 수 있습니다. 파이프라인에는 | 문자로 구분된 여러 명령이 포함될 수 있습니다. 성격. 각 명령의 출력은 파이프라인의 다음 명령에 마지막 인수로 전달됩니다.
파이프라인에서 "점"(.)의 역할
" 점"(.)은 템플릿에서 사용하는 데이터 구조의 현재 위치를 가리키는 커서입니다. 템플릿을 실행할 때 점은 처음에 템플릿 실행에 전달된 값으로 설정됩니다. 템플릿이 처리됨에 따라 점은 데이터 내의 특정 필드나 하위 구조를 가리키도록 값을 변경할 수 있습니다.
템플릿 호출의 파이프라인
다음을 사용하여 다른 템플릿을 호출하는 경우 {{template}} 함수에서는 점을 파이프라인 인수로 사용하여 호출된 템플릿 내에서 사용할 데이터 값을 지정할 수 있습니다. 예를 들어, {{template "myTemplate" .}}은 현재 점 값을 "myTemplate"이라는 템플릿에 전달합니다.
데이터 액세스에 "점" 및 "$" 사용
점 커서가 템플릿 내의 현재 값에 대한 액세스를 제공하는 반면, $ 기호를 사용하여 템플릿 실행에 전달된 원래 값에 액세스할 수 있습니다. 이는 점이 {{range}} 또는 {{with}}와 같은 작업으로 수정된 경우에 유용합니다.
예
다음 템플릿을 고려하세요.
{{- define "test" -}} {{- printf "%s" .Name | trunc 24 -}} {{- end -}}
이 예에서 점(.Name)은 템플릿 실행에 전달된 데이터 구조의 이름 필드를 나타냅니다. | trunc 24 파이프라인은 trunc 함수를 Name 값에 적용하여 24자로 자릅니다. 이 변환된 값은 printf를 사용하여 인쇄됩니다.
결론
파이프라인과 "점"은 Golang 템플릿의 기본 개념입니다. 템플릿 내의 데이터를 조작하고 액세스하기 위한 강력한 메커니즘을 제공하므로 유연하고 동적인 템플릿 생성이 가능합니다.
위 내용은 파이프라인과 점(.) 연산자는 Go 템플릿에서 어떻게 작동하나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!