如何使用 React 在 Keystone.js 中使用自定义模板?

Posted

技术标签:

【中文标题】如何使用 React 在 Keystone.js 中使用自定义模板?【英文标题】:How to use a custom template in Keystone.js using React? 【发布时间】:2017-04-30 06:59:08 【问题描述】:

尝试花一些时间研究此问题,但 keystone.js 上的文档对此有所了解。谷歌搜索将我带到一些关于在核心 Keystone 中实现 React 并在生成器中创建选项的 github 讨论,但这项工作似乎还没有准备好。

所以我认为唯一的选择是将 Keystone 项目手动设置为 React,但我没有足够的信息来启动该路径。我将如何使用 React 在 Keystone 中使用自定义模板?

【问题讨论】:

看起来有一个 yeoman 生成器可以在 keystone 中使用 react,这有帮助吗? github.com/keystonejs/generator-keystone-react(就自定义模板而言,app/templates 中的所有内容都是可编辑的) 我看到了,但这似乎不是我所期望的。它没有与常规应用程序相同的生成器,因此它不会创建我想要测试的模块,例如仪表板功能、博客等。基本上这会加载一个 hello world,而且,模板文件仍然是编写的在玉。我想我不明白这个生成器在做什么。 如果您还在寻找,我刚刚开始从车把生成的项目迁移到使用 github.com/laurenskling/keystone-with-react-engine 做出反应,它基于最新的 yo keystone 生成器,因此可以让您的生活更轻松。我发现将现有的 .hbs 文件移动到 .jsx 相对简单。 如果您仍在寻找解决方案,这里有一系列教程。 https://itnext.io/building-a-node-cms-with-keystonejs-mongo-db-react-and-redux-part-i-ae5958496df2 本教程包含使用 keystonejs、react 和 redux 从头开始​​设置 keystone cms 的步骤。 【参考方案1】:

    要使用 React 创建新的 Keystone 应用程序,请在终端上运行以下命令:

    npm init keystone-app my-app 转到文件夹并运行npm install underscore --save

    然后在 grapgQL 中创建查询和变异。

    通过apollo-clientaxios 获取数据

有一个关于这个的三部分教程:

part1

part2

part3

【讨论】:

以上是关于如何使用 React 在 Keystone.js 中使用自定义模板?的主要内容,如果未能解决你的问题,请参考以下文章

在 CMS 中添加新的导航选项卡(keystone JS)

有没有办法隐藏 Keystone.js 中的 ID 列?

执行经过身份验证的 keystone.js / GraphQL API 查询

使用 htaccess 将 keystone 应用程序重定向到子目录

带有 Keystone 的 GraphQL 需要字段类型必须是输出类型,但得到:未定义

如何使用 React.createRef() 在 React 中访问多个 Dom 元素