2011-09-06 2 views
9

jade 또는 ejs와 같은 템플릿 엔진이 필요없는 고속 (노드) 애플리케이션을 생성 할 수 있습니까? 나는 대학에서 마지막으로 큰 프로젝트를했고 노드, express, socket.io, mongoDB 및 websockets를 사용할 것입니다. 나는 템플렛 언어를 너무 배워야하기에 짐을 지우고 싶지 않다!템플릿 엔진없이 익스프레스 사용

기본적으로 express는 jade -t, --template add template support (jade | ejs)를 사용합니다. 기본 = 옥

답변

12

은 가능한 같은 옥 또는

예 그것이 EJS 같은 템플릿 엔진이 필요없이 명시 (노드) 응용 프로그램을 작성하는 것입니다. HTML 만 사용할 수 있습니다. 또는 EJS 만 사용하십시오. EJS는 HTML의 상위 집합입니다.

너무 템플릿 언어를 배우지 않아도됩니다.

하루에 템플릿 언어를 배울 수 있습니다. 정말 도움이 될 것입니다. 그냥 해. 그것은 가치.

+0

JavaScript와 관련된 모든 것에 관해서는 항상 답을 얻었습니다. 귀하의 답변은 항상 요점과 유익합니다. 감사! – Jack

+1

@JackBrown [빠른 질문을 할 수 있습니다.] – Raynos

+5

새로운 템플릿 언어를 배우는 것이 아니라, 템플릿 엔진을 사용하는 것 같아요. 당신의 html 페이지를 망칠 것입니다. 당신이 잘 디자인 된 html 페이지를 많이 가지고 있다면 완전히 새로운 템플릿 형식으로 변환해야한다는 것을 상상해보십시오. – silent

3

다른 템플릿 언어를 배우지 않으려면 밑줄 템플릿을 사용해보십시오. 그들은 자바 스크립트 일 뿐이며, 어쨌든 배우게 될 것입니다. 기본 app.get ('/')는 다음과 ... 라인을 교체하는 것이 작업을 수행

app.register('.html', { 
    compile: function(str, options){ 
     var compiled = require('underscore').template(str); 
     return function(locals) { 
      return compiled(locals); 
     }; 
    } 
}); 
1

가장 쉬운 방법 :

documentcloud.github.com/underscore/#template

당신은 그것을 설정할 수 있습니다. 그런 다음 모든 마법을 index.html에 저장하십시오. 이것은 적어도 단일 페이지 응용 프로그램을 위해 아주 잘 작동 할 것입니다.

app.set('views', path.join(*__dirname*, 'views')) 
app.set('view engine', 'ejs'); // template engine 
app.engine('html', require('ejs').renderFile); // turn engine to use html 

참고 : 지금 다음

app.get('/', function(request, response) { 
var readFile = "index.html"; 
var fileContents = fs.readFileSync(readFile); 

response.send(fileContents.toString()); 
}); 
1

가장 좋은 옵션

수락하고 HTML을 렌더링하는 EJS (엔진)을 사용하고 구성하는 것입니다 귀하의 모든 뷰 또는 템플릿이 .html 확장.