2016-11-04 3 views
0

특정 순간에 믹스 인 (mixin) 호출이있는 옥 (Jade) 템플릿이 제공되었습니다. 함께 화면에비취 : 비취 블록을 믹스 인에게 줄 문자열로 전달하는 방법

+createHTML({firstSection:'<div>some text and more HTML tags nested in here</div>'}) 

및 인쇄 : 우리는 그들 중 하나가 믹스 인은이 같은 간다 !=

를 통해 인쇄를 담당하는 매우 긴 HTML 문자열, 즉 믹스 인 몇 가지 매개 변수를 전달

이 비록
mixin createHTML(obj) 
    section 
     !=obj.firstSection 

는 현재 작동하고 문제가입니다 : 매개 변수로 전달 HTML 문자열 등 많은 중첩 된 태그, 텍스트와 현실에 매우 긴, 그리고 읽기 쉬운 이유는 내가 사용하는 HTML을 구성하고 싶습니다비취 구문, 그것을 문자열로 변환하고 mixin에 전달하십시오. 그게 가능한가?

block myHTML 
    div 
     p sometext in #[strong bold] here 
     p more text 

- var stringHTML = toString(myHTML) 

+createHTML({firstSection:stringHTML}) 
+0

을 다른 파일은 ** blah.jade **를 포함하여 간단히 포함시킵니다. – Molda

답변

0

옥이나 mixin 지원 하나 블록 매개 변수 :처럼 뭔가. 당신은 너무 같은 믹스 인에 옥 블록을 전달할 수 있습니다

믹스 인 정의 :

mixin profile(name) 
    article.profile 
    h1 #{name} 
    block 

믹스 인 전화 : 당신이 옥 코드를 삽입하지 않는 이유는

+profile('Mr Tickle') 
    p Lorem ipsum 
    ul 
    li some stuff 
    li more stuff 
+0

답변 해 주셔서 감사합니다. 어쩌면 나는 자신을 잘 표현하지 않았을 것입니다. 문제는 mixin이 더 많은 속성을 가진 Object를 받아야한다는 것입니다. 즉, '+ createHTML ({firstSection : stringHTML, someotherprop : 'Hello World', otherprop : '오늘의 가격이 더 낮다'})'이것이 HTML을 Object Literal 스타일로 전달해야하는 이유입니다. 같은 페인트됩니다! '믹스 인의 createHTML (OBJ) = obj.firstSection = obj.someOtherProp' – Barleby

+0

을하는 경우 당신은 운이있을 수 있습니다. 나는 얼마 전에 옥 (jade) 변수로 비취 표현의 결과를 저장하려고 시도했지만 해결책을 찾지 못했다. 죄송합니다! –

관련 문제