>웹 프론트엔드 >JS 튜토리얼 >반응 백엔드 렌더링 템플릿 엔진 noox 릴리스를 사용하는 방법

반응 백엔드 렌더링 템플릿 엔진 noox 릴리스를 사용하는 방법

小云云
小云云원래의
2018-01-13 09:22:022192검색

이 글은 주로 React 백엔드 렌더링 템플릿 엔진을 기반으로 한 noox의 출시 및 사용 방법을 소개합니다. 편집자는 꽤 좋다고 생각하므로 이제 공유하고 참고용으로 제공하겠습니다. 편집자를 따라 살펴보겠습니다. 모두에게 도움이 되기를 바랍니다.

React 구성 요소화 아이디어는 개발자가 페이지를 구성 요소로 분리하여 코드를 더욱 모듈화하고 확장하기 쉽게 만드는 데 도움이 됩니다. ejs, swig, jade, art 등 현재 널리 사용되는 백엔드 템플릿 엔진에는 공통된 문제가 있습니다.

  1. {{if}}, {{loop} 등 다양한 템플릿 엔진에서 정의하는 구문을 배워야 합니다. }

  2. 컴포넌트화에 대한 지원이 충분하지 않고 구현이 복잡하며 사용이 쉽지 않습니다

위의 문제점을 고려하여 저자는 React를 기반으로 noox와 같은 도구를 만들었습니다. 백엔드 템플릿 구문 분석에 중점을 두고 템플릿 구문 분석을 더 간단하고 사용하기 쉽게 만듭니다.

사용방법

설치


npm install noox

간단한 데모

템플릿 코드

먼저 컴포넌트 디렉터리를 생성하고 템플릿 파일을 추가합니다


mkdir components && cd components
vi Head.jsx
의 콘텐츠

Head.jsx는 다음과 같습니다:


<head>
 <title>{title}</title>
 <meta name="description" content={props.description} />
 <link rel="stylesheet" href="./css/style.css" rel="external nofollow" rel="external nofollow" />
</head>

Node.js Code


const noox = require(&#39;noox&#39;);
const nx = new noox(path.resolve(__dirname, &#39;./components&#39;), {title: &#39;noox&#39;});
let output = nx.render(&#39;Head&#39;, {description: &#39;hello, noox.&#39;})

Output


<head>
 <title>noox</title>
 <meta name="description" content="hello, noox." />
 <link rel="stylesheet" href="./css/style.css" rel="external nofollow" rel="external nofollow" />
</head>

Principle

Noox는 구성 요소 참조 및 생성을 단순화합니다. React의 Jsx를 기반으로 다음과 같이 가정합니다. 디렉토리가 생성됩니다. 구조는 다음과 같습니다.


components/
 Header.jsx
 Body.jsx
 Layout.jsx

다음 nodejs 코드를 실행합니다.


nx = new noox(path.resolve(__dirname, &#39;./components&#39;))

는 세 가지 구성 요소를 생성합니다.

  1. Header

  2. Body

  3. 레이아웃

그런 다음 nx .render 렌더링을 전달합니다.


nx.render(&#39;Body&#39;, props)

관련 권장 사항:

웹팩 구성 백엔드 렌더링에 대한 자세한 설명

백엔드 렌더링 html, 프런트엔드 템플릿 렌더링 html, jquery html, 차이점은 무엇입니까?

반복 렌더링을 방지하기 위해 프런트엔드와 백엔드 동형성을 반응시키세요

위 내용은 반응 백엔드 렌더링 템플릿 엔진 noox 릴리스를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.