노드에 빌드 스크립트를 쓰고 있습니다. 간단히 말해서, 스크립트는 다음을handlebars.js에 누락 된 (또는 "선택적") 표현식이 있습니까?
- 는 (정보 (프로젝트 이름, 설명 등)
- 클론
- 자신의 템플릿 이름에서 파일 이름을 변경 템플릿 자식의 repo를 입력하라는 메시지 예를 들어 com_foo_template. JS -> com_foo_myproject.js)
- 내가 토큰 교체 단계 Handlebars.js를 사용하려고 해요
1 단계에서 입력에 따라 일부 템플릿 파일의 토큰을 대체합니다.
배포를위한 두 번째 단계가 있으며 토큰 대체가 필요합니다. 이것은 내 질문의 근원입니다.
일부 파일에서는 초기화 시간 (clone/rename/replace 부분) 중에 포함 된 모든 토큰이 교체됩니다. 다른 파일에서는 init-time에이 토큰 중 일부만 대체되고 다른 하나는 배포 단계가 실행될 때까지 대체되지 않습니다 (배포 날짜, 자식 커밋 해시 등). 다음 파일 고려 :이 파일에서
<zimletConfig name="{{name}}" version="{{deploy_version}}">
<global>
<property name="allowedDomains">*.foo.com</property>
<property name="gitCommit">{{gitcommit}}</property>
<property name="deployDate">{{deploydate}}</property>
</global>
</zimletConfig>
을 만 {{이름}} 초기화시에 교체해야합니다; 다른 토큰은 배포시에만 교체해야합니다.
<zimletConfig name="com_foo_myproject" version="">
<global>
<property name="allowedDomains">*.foo.com</property>
<property name="gitCommit"></property>
<property name="deployDate"></property>
</global>
</zimletConfig>
가 전달 된 객체에 존재하지 않는 경우 토큰을 대체하지 핸들을 할 수있는 방법이 있나요 : 내 초기화 단계를 실행하면, 그래도 배포 시간 토큰은 빈 문자열로 대체됩니다?