NakedJSX 是一个命令行工具,用于从 JSX 生成 HTML 文件。输出是纯 HTML 和 CSS - 除非您选择添加自己的 JavaScript。
通过运行 npx 命令从 JSX 生成静态 HTML 文件。Scoped CSS 类是从 JSX 中提取并进行去重的。
无需置 Node.js 项目,只需在 NakedJSX 内容目录上运行 npx 命令,您的站点就会构建到输出文件夹中。
包括具有实时刷新构建和 Web 服务器的开发模式。
NakedJSX 提供了一个可选的小型运行时,允许客户端 JavaScript 使用 JSX。如果需要,运行时会自动注入,并向文件添加大约 0.5 KB。
演示:
如果你安装了 Node.js,你现在可以试试 NakedJSX。创建一个名为src以下文件的目录(文件名必须以 结尾-page.jsx):src/index-page.jsx
import { Page } from '@nakedjsx/core/page'
const BodyContent =
({ title }) =>
<>
<h1 css="color: fuchsia">{title}</h1>
<p css="color: #ff00ff">
Building HTML files from JSX feels right.
</p>
</>
Page.Create('en');
Page.AppendCss('body { font-family: sans-serif }');
Page.AppendHead(<title>Hello NakedJSX</title>);
Page.AppendBody(<BodyContent title="Hello NakedJSX" />);
Page.Render();
然后在终端中打开父目录并运行:
# 构建命令
$ npx nakedjsx src --out out --pretty
结果是一个名为 的新子目录out,其中包含一个 HTML 文件:out/index.html(342 字节)
<!DOCTYPE html>
<html lang="en">
<head>
<title>Hello NakedJSX</title>
<style>
body {
font-family: sans-serif
}
.a {
color: #f0f
}
</style>
</head>
<body>
<h1 class="a">Hello NakedJSX</h1>
<p class="a">Building HTML files from JSX feels right.</p>
</body>
</html>
请注意,scoped CSS 是从 JSX 中提取的,经过缩小,然后进行了去重。
官网:https://nakedjsx.org/
网友回复
为啥所有的照片分辨率提升工具都会修改照片上的图案细节?
js如何在浏览器中将webm视频的声音分离为单独音频?
微信小程序如何播放第三方域名url的mp4视频?
ai多模态大模型能实时识别视频中的手语为文字吗?
如何远程调试别人的chrome浏览器获取调试信息?
为啥js打开新网页window.open设置窗口宽高无效?
浏览器中js的navigator.mediaDevices.getDisplayMedia屏幕录像无法录制SpeechSynthesisUtterance产生的说话声音?
js中mediaRecorder如何录制window.speechSynthesis声音音频并下载?
python如何直接获取抖音短视频的音频文件url?
js在浏览器中如何使用MediaStream与MediaRecorder实现声音音频多轨道混流?