
저는 템플릿 엔진을 작성 중이고 사용자가 현재 디렉터리에 있는 파일을 참조할 수 있도록 허용하고 싶지만 파일이 존재하지 않으면 상위 디렉터리를 검색하는 등 해당 source/
디렉터리까지 검색합니다. 제 경우에는 템플릿입니다. 소스 트리.
이를 통해 파일 포함을 쉽게 재정의하고 위치에 따라 다양한 파일을 구문 분석할 수 있습니다(국제화 등에 유용함).
그러한 일을 처리하기 위한 일반적인 구문이 있습니까?
답변1
며칠을 기다린 후에는 이에 대한 범용 구문을 아는 사람이 아무도 없는 것 같습니다.
경로 구문 분석을 위한 자체 시스템을 작성할 때 의미가 있는 것만 선택합니다. 즉, 현재 디렉터리나 상위 디렉터리에 있는 모든 파일은 내 "루트" 디렉터리 .../file
까지 참조됩니다 .source/
내 템플릿은 다음과 같습니다.
<div>{{ include path }}</div>
path
여기에는 현재 파일과 동일한 디렉터리에서 호출된 파일이 포함됩니다.
경로가 와 같은 절대 경로인 경우 /path
로 확인됩니다 source/path
.
source/abc/def/ghi/other-file
이제 다음을 포함하는 파일이 주어지면 이 새로운 구문을 사용합니다.
<div>{{ include .../path }}</div>
포함된 파일은 다음 위치 중 하나에 있을 수 있습니다.
source/path
source/abc/path
source/abc/def/path
source/abc/def/ghi/path
이를 통해 다음과 같은 디렉토리를 구축하여 국제화와 같은 기능을 얻을 수 있습니다.
source/en/_messages
source/sv/_messages
이제 포함 위치에 따라 다음을 선언하여 포함이 있는 영역의 메시지로 파일을 채우는 공유 파일을 가질 수 있습니다.
{{ include .../_messages }}