Node.js 101 - 첫 번째 템플릿 만들기
6620 단어 nodetutorialjavascriptbeginners
이제 Node.js 학습 여정을 계속할 준비가 되었습니다. :)
아무것도 놓치고 싶지 않다면 팔로우를 클릭하세요. 매일 배운 내용을 여기 Dev.to에 게시할 예정입니다.
더 이상 고민하지 않고 여기에 마지막 날의 메모 요약이 있습니다.
첫 번째 템플릿
템플릿을 사용하면 애플리케이션에서 정적 html 파일을 사용할 수 있습니다. 런타임에 템플릿 엔진은 템플릿 파일의 변수를 실제 값으로 바꾸고 템플릿을 클라이언트에 전송되는 HTML 파일로 변환합니다. 이 접근 방식을 사용하면 HTML 페이지를 더 쉽게 디자인할 수 있습니다.
어제 언급한 것처럼 Node.js에서는 Espress.js와 같은 프레임워크를 사용하여 템플릿을 비롯한 많은 것을 자동화할 수 있습니다. 그러나 백그라운드에서 작동하는 방식을 이해하는 것이 중요합니다. 그래서 여기에 당신을 도울 작은 예가 있습니다.
작은 정적 html 페이지를 만들어 보겠습니다.
<h1>Hello Mike<h2>
<p>Your age are 42<p>
이 정적 페이지는 항상 동일한 정보를 표시합니다. 다른 사람의 정보를 표시하려면 다른 페이지를 만들어야 합니다. 20개의 html 파일을 생성할 20명의 목록이 있는 경우. 물론 우리는 절대 그렇게 하지 않을 것입니다.
여기서 해결책은 키워드를 실제 데이터로 대체할 템플릿 엔진을 만드는 것입니다.
<h1>Hello {%name%}<h2>
<p>Your age are {%age%}<p>
이 템플릿에서는 런타임 시 페이지에 삽입될 2개의 자리 표시자를 만듭니다.
코드는 다음과 같습니다.
const friends = [
{id: 1, name: 'Mike Taylor', age: 42},
{id: 2, name: 'John Lamkin', age: 44},
]
let page = `<h1>Hello {%name%}<h2>
<p>Your age are {%age%}<p>`
page = page.replace('{%name%}', friends[0].name)
page = page.replace('{%age%}', friends[0].age)
console.log(page)
// <h1>Hello Mike Taylor<h2>
// <p>Your age are 42<p>
이제 이 채우기 템플릿을 클라이언트에 보낼 수 있습니다.
// the http module have method to help create the server
const http = require('http')
const server = http.createServer((req, res) => {
res.writeHead(200, {
'Content-type': 'text/html'
})
res.end(page)
})
// start server listening for request
server.listen(5000, 'localhost', () => {
console.log('Server is listening at localhost on port 5000')
})
이것은 템플릿에 대한 매우 거친 충돌 과정입니다. 앞에서 언급했듯이 실제로는 코딩하지 않을 것입니다. 학습 목적일 뿐입니다.
지금까지 무엇을 배웠습니까?
지난 커플 수업에서 배운 모든 것을 요약하면 이제 웹 서버 작동 방식에 차이가 생기기 시작합니다.
그리고 이러한 모든 작업을 대폭 간소화한 Espress.js라는 프레임워크가 있다는 사실을 잊지 마십시오. 실제로 그렇게 할 수 있는 많은 프레임워크가 있지만 Express가 가장 인기가 있습니다.
결론
오늘은 여기까지입니다. 내일은 시리즈의 마지막 수업이며 타사 패키지를 설치하고 사용하는 방법을 살펴보겠습니다.
트위터에서 나를 팔로우하세요:
Reference
이 문제에 관하여(Node.js 101 - 첫 번째 템플릿 만들기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/ericchapman/node-js-101-part-4-my-first-template-5ag3텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)