ejs模板html,纯JSX模板用于渲染静态HTML

Experimental Node.js module and CLI to use JSX as a templating language for static HTML

Usage

Be sure you have Node v6 installed https://nodejs.org

npm install -g ejsx

Create a folder that will contain JSX template files.

Create a Root JSX template file. These “JSX template” files should not contain any wrapping JavaScript – only JSX syntax.

Root.jsx

Hello

Run the ejsx command and write the output to an HTML file.

ejsx components > index.html

Create Components

To create reusable components, add files to the folder that begin with a capital letter and have the .jsx file extension.

This is an example Header component. Components have access to the props passed in from their parent.

Header.jsx

{props.title}

Root.jsx

Passing Props

To pass props to the Root component, create a JSON file and pass the name of that file as an argument to the CLI.

data.json

{

"title": "Hello"

}

ejsx components --props data.json > index.html

Loops

Looping over arrays is done using the array map() method. Each child in an array must also have a key prop to be properly tracked.

{props.items.map((item,i) => (

{item}

))}

Conditionals

If statements will not work in JSX, but ternary operators can be used instead.

{props.foo% 2 ? Odd : Even}

You can also skip rendering is a value is falsy.

{true&&

Visible
}

{false&&

Hidden
}

{props.foo&&

Hidden when props.foo is falsy
}

See the docs folder for a complete example.

Motivations

React is a very powerful tool that can completely replace the need for traditional templating systems, but can be daunting to designers or others who aren't as familiar with JavaScript or Node.js. This is meant to be an extremely simple way to use JSX and basic components to render static HTML, without the need to use JavaScript.

This might be good as a soft introduction to some of the concepts in React, especially related to code reuse, component encapsulation, and styling in React.

About JSX

MIT License

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值