>백엔드 개발 >Golang >Golang 템플릿 엔진 파이프라인에서 점(.) 연산자는 어떻게 작동합니까?

Golang 템플릿 엔진 파이프라인에서 점(.) 연산자는 어떻게 작동합니까?

Linda Hamilton
Linda Hamilton원래의
2025-01-02 17:23:40581검색

How Does the Dot (.) Operator Function in Golang Template Engine Pipelines?

Golang 템플릿 엔진 파이프라인: 도트와 파이프라인 이해

Golang 템플릿 엔진에서 "파이프라인" 개념은 시퀀스를 나타냅니다. 데이터 값에 적용할 수 있는 명령입니다. 파이프라인은 간단한 값 평가, 함수 호출 또는 인수가 있는 메서드 호출로 구성될 수 있습니다. 각 명령의 결과는 다음 명령의 입력이 되며, 최종 명령의 출력은 파이프라인의 값이 됩니다.

템플릿에서 파이프라인을 사용할 때 "점"(.)은 현재 값을 나타냅니다. 처리중입니다. 처음에 점은 템플릿 엔진에 전달된 루트 값에 해당합니다. 그러나 점은 {{range}} 및 {{with}}와 같은 작업을 통해 수정될 수 있으므로 데이터 구조를 탐색할 수 있습니다.

파이프라인과 점의 사용을 설명하려면 다음 템플릿을 고려하세요. :

{{- define "test" -}}
{{- printf "%s" .Name | trunc 24 -}}
{{- end -}}

이 템플릿에서 "test" 템플릿은 두 가지로 구성된 파이프라인으로 정의됩니다. 명령:

  1. printf "%s" .Name: 점이 가리키는 값의 "이름" 필드를 평가하고 문자열 형식으로 지정합니다.
  2. trunc 24: 결과 문자열을 최대 길이 24까지 자릅니다.

이 템플릿을 사용하면 특정 값을 인수로 전달하여 점을 사용자 정의할 수 있습니다. 예:

{{ template "test" . }}

이 줄은 점의 현재 값을 "test" 템플릿에 전달합니다. 이름이 잘린 파이프라인의 결과가 출력에 렌더링됩니다.

또한 "점"을 사용하면 템플릿 실행에 전달된 원래 값에 액세스할 수 있습니다. 이는 중첩된 템플릿 내에서 또는 중간 파이프라인 명령에 의해 수정되었을 수 있는 특정 필드에 액세스할 때 유용할 수 있습니다. 원래 값에 액세스하려면 "$" 변수가 사용됩니다.

파이프라인과 Golang 템플릿 엔진에서 도트의 역할을 이해하는 것은 템플릿을 효과적으로 사용하고 사용자 정의하는 데 필수적입니다.

위 내용은 Golang 템플릿 엔진 파이프라인에서 점(.) 연산자는 어떻게 작동합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.