Reflexjs
文档模块库指南GitHub
/
,

Next.js

将 Reflexjs 添加到 Next.js项目。


使用一个启动器

最简单的入门方法是使用nextjs-starter模板。该模板具有你所需的全部自动设置。

npx create-next-app -e https://github.com/reflexjs/nextjs-starter

在你的网站准备就绪后,你可以运行 yarn dev 来启动开发环境。

添加到现有网站

如果你要从头开始,那么可以使用create-next-app创建一个新的 Next.js 项目。

npx create-next-app
# or
yarn create next-app

你也可以将 Reflexjs 添加到一个已有的 Next.js 网站。

安装依赖

将 Reflexjs 添加到你的网站。

npm i reflexjs
# or
yarn add reflexjs

创建一个主题

使用 Reflexjs CLI 工具生成一个主题。

npx reflexjs --preset base

这将在你的项目根目录使用*基本*预设创建一个 theme.js 文件。

更新_app.js

用以下代码创建 src/pages/_app.js

src/pages/_app.js
import { ThemeProvider } from "reflexjs"
import theme from "../src/theme"
export default function App({ Component, pageProps }) {
return (
<ThemeProvider theme={theme}>
<Component {...pageProps} />
</ThemeProvider>
)
}

更新_document.js

InitializeColorMode 添加到 src/pages/_document.js

src/pages/_document.js
import Document, { Html, Main, NextScript, Head } from "next/document"
import { InitializeColorMode } from "reflexjs"
export default class extends Document {
render() {
return (
<Html lang="en">
<Head />
<body>
<InitializeColorMode />
<Main />
<NextScript />
</body>
</Html>
)
}
}

添加 Babel 预设

Reflexjs 使用自定义 jsx pragma 来转换样式属性。如需启用此 pragma,请在你的项目根目录创建一个包含以下信息的 .babelrc文件

{
"presets": [
[
"next/babel",
{
"preset-react": {
"runtime": "automatic",
"importSource": "reflexjs"
}
}
]
]
}
此预设自动为你设置 `jsx` pragma,这样你就不必在各个文件中进行导入。

如果你更愿意手动启用它,则可以按照以下方式在你的文件中设置 pragma

pages/index.tsx
/** @jsxImportSource "reflexjs" */
export default function IndexPage() {
return <p variant="text">Hello World!</p>
}

你现在准备好了使用 yarn dev启动开发服务器。

升级指南Gatsby

© 2022 Reflexjs

文档区块库指南GitHub