问题标签 [netlify-cms]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
gatsby - netlify cms gatsby 获取“必须设置标识符字段”以进行收集
嗨,我正在使用gatsby-starter-netlify-cms并设置了一个名为“Bios”的辅助博客或添加内容管理器正确显示的新生物但是当我按下发布时它从未真正发布更改(绿线永远消失......)
控制台显示: “未捕获(承诺中)错误:集合必须具有一个有效条目标识符的字段名称,或者必须设置 identifier_field”
回购位于https://github.com/theMakersOrg/theMakersWebsiteV2
这是我的 config.yaml 中的代码
reactjs - Gatsby 静态查询组件中的 Graphql 查询,带有 markdown 文件
我一直试图围绕这个问题思考一段时间,但无法解决。
总而言之,我正在尝试使用 netlify CMS 制作一个 Gatsby 网站。CMS 的目的不是创建或删除页面,而是能够编辑不同静态页面的内容(即:关于、主页等...)
在我的 Gatsby 项目中,我基本上连接了我的 netlify CMS,我想要实现的文件结构大致如下:
可以从 CMS 编辑降价文件,我想在我的页面组件中使用这些数据。我使用 npm install 和相应的 gatsby-config.js 插件声明设置了 gatsby-markdown-remark 和 gatsby-source-filesystem。
这些降价将如下所示:
我希望能够通过静态查询提取这些数据以在页面组件中使用,但无法确定如何定位。
我试图尽量减少代码量,因为我真的认为我的问题来自 graphql 查询,但如果它让人感到困惑,我很抱歉。我也很困惑。
任何导致正确方向的帮助将不胜感激。可能是方法不是它应该如何工作。
谢谢你。
reactjs - Netifly 部署后加载资源失败
今天早上,我从 github 存储库在 Netifly 上部署了一个 React 网站。
然后我做了一些更改,将它们推送到 github,并在 Netifly 上触发了新的部署。现在该网站是一个空白页面。在控制台中,我有消息:
加载资源失败:服务器响应状态为 404 ()
所以我在 Netifly 上创建了一个新项目,具有相同的存储库。问题依然存在。它是来自 Netify 的临时问题吗?如果没有,我该如何解决?
reactjs - 使用 graphql 在 Gatsby 中显示目录(降价文件)的内容
我正在使用 Gatsby/Netlify CMS 堆栈,并一直在尝试在主页上显示 markdown 文件内容。例如,我在 src/pages/experience 中有一个目录,其中显示了所有体验降价文件。
所以使用graphql,我有一个实际有效的查询:
但是,在我的组件页面上运行它时,它显示 × TypeError: Cannot read property 'allMarkdownRemark' of undefined
但是,在返回之前输入此内容后:
错误消失了,但整个部分都消失了。下面是:
在 gatsby-config-js 中,我添加了一个独立于 /src/posts 的 gatsby-source-filesystem 解析到 /src/pages,其中体验目录是 src/pages/experience。
更新:2/7/2019 这是 gatsby-config-js 文件:
我的感觉是,在 gatsby-node-js 的某个地方,我没有创建一个实例来处理该类型的查询。
想知道是否有人能够得到类似工作的东西?非常感谢您的帮助。
更新:2019 年 2 月 6 日
所以对我的代码从 pageQuery 到 StaticQuery 进行了一些更改,不幸的是它仍然不起作用,但我相信它正朝着正确的方向发展:
我收到此错误 TypeError: Cannot read property 'title' of undefined
所以我想要完成的是本节中的这个实例。当然这是一个占位符,但我希望用每个降价的内容替换该占位符。 体验剪辑
更新:2019 年 2 月 7 日
所以今天没有变化,但想发布一些字段,以便更好地了解我正在尝试做的事情。这是来自 NetlifyCMS 的 config.yml 文件,它在其中显示集合。这就是我正在完成的(注意:测试 repo 只是为了查看实际的 CMS,我会寻求改变):
对于降价页面的示例,这将是在体验部分中查找的格式,因为正如您在图片中看到的那样,它显示在整个容器中:
更新:2019 年 2 月 8 日
我确实对下面提供的代码进行了一些更新,但在我开始之前,这里有一些我想要完成的图像。这些是我希望替换为真实数据的占位符。这是针对每个部分的:
我已经运行了@staypuftman 在下面的答案中提供的代码,并出现了这个错误:
您网站的“gatsby-node.js”创建了一个页面,其中包含一个不存在的组件。
除了已经存在的代码之外,我还添加了代码并处理了该错误。这就是我最初认为会发生的事情,也是我想独立使用 StaticQuery 的原因。这实际上是我在文档和入门存储库中遇到的主要问题,没有人真正在 node.js 中创建多个变量。
我还尝试了来自@DerekNguyen 的修订版,看起来像这样:
然而,这也带来了一个错误:
TypeError:无法读取未定义的属性“边缘”
仍在努力,但我认为它越来越接近解决方案。请记住,我还必须为其他变量创建它。
更新:2019 年 2 月 10 日
对于那些想看看我是如何使用 gatsby-starter 构建网站的人,这里是:
graphql - “文件”类型的 GraphQL 错误字段“图像”必须具有子字段选择。您的意思是“图像 { ... }”吗?
我正在用 gatsby 和 Netlify CMS 构建一个站点。我使用了 Gatsby Site Starter。
我不断收到“文件”类型的“GraphQL 错误字段“图像”必须有一个子字段选择。您的意思是“图像 { ... }”吗?尝试部署到 Netlify 时出错。一切都在本地主机上完美运行,但图像似乎有些失败。我查看了 Netlify CMS 页面上提供的示例,发现有人具有完全相同的设置,一个列表小部件(充当画廊),里面有图像和描述,here。
配置.yml
gallery.js(模板文件)
/服务/摄影.md
reactjs - 在 Gatsby 中构建静态 HTML 页面时出错
即使 Gatsby 开发工作正常,在构建站点时也会出错,降价来自 Netlify CMS。具体错误是:
我一直在阅读其他类似的路径,并尝试从 cms 更改我的 markdown 文件中的路径,但无济于事。
盖茨比-config.js
blogTemplate.js
盖茨比-node.js
GraphQL
查询返回以下错误,除非我传入其中一篇博客文章的特定路径,然后它返回正确的结果
我认为这就是这里需要的所有相关代码,如果需要其他任何内容,请告诉我。
javascript - 如何在 gatsby graphql html 节点中获取特定元素
当我通过 grapghql 查询数据时,它将它们全部包含在一个 html 节点而不是独立节点中
假设我在 CMS 中插入了两个标题标签,我想在组件内使用这些标签
它会产生这个:
问题是:如何获取第一个 p 标签并在组件内使用它,而另一个 p 标签插入到主组件内的另一个组件内?就像我怎样才能控制 html 节点如何提供数据
并假设我不想将它们插入到多个子组件中,假设我希望第一个 p 标签具有特定样式,而第二个 p 标签具有另一种样式
如果有办法访问 html 节点内的特定元素,它将进行更多发送
hugo - 用于 Hugo 启动器的 Netlify 部署因“spawn EACCES”错误而失败
我已经使用 Netlify CMS Hugo Site Starter建立了一个站点,它运行良好。
然后我从创建的存储库中取出文件并将它们移动到一个新的 Git 存储库,并基于该存储库创建一个新的 Netlify 站点。突然部署在尝试启动 Hugo 时给了我一个错误:
在 Netlify 部署的上下文中,我似乎找不到任何关于“spawn EACCES”错误的信息。
有人有任何想法或以前可能遇到过这个问题吗?
编辑:澄清一下:
当我克隆原始的Hugo Site Starter Git 存储库并使用它进行部署时,一切正常。
当我创建一个新的 Git 存储库时,提交+推送与克隆存储库完全相同的内容并尝试将其部署为站点,Netlify 返回spawn EACCES
错误。我做了一个 Winmerge 来查找更改,唯一的更改是在.git
文件夹中,因为我创建了一个新的存储库(所以它只有一个提交而不是 200+);代码是 100% 相同的。
node.js - npm start 绑定到 linux 容器 ip 地址
我需要能够将我的 linux 容器“npm start”地址绑定到 10.XX.XX.XX,这样我才能从我的主机箱中查看。主机和容器都是 Ubuntu。主机是 Ubuntu 18,容器是 16 Xenial。
我目前正在关注netlify-cms victor-hugo 教程。我的设置是在一个运行 Ubuntu 16 Xenial 的 linux 容器上。npm 工作但是,我无法弄清楚如何将地址绑定到 linux 容器 ip 地址。
我通常可以弄清楚这一点,因为服务器通常会有一个 -b 标志,或者使用某种绑定或主机设置或类似的东西,但我无法弄清楚这一点。我已经对 package.json 文件进行了修改,一些在线示例使用 http-server,但我的 netlify-cms 和 victor-hugo 设置使用“start”:“run-p start:**”。搜索 run-p 示例是空白的。
我对 node.js 和 npm 的经验很少。这是 package.json 设置的一部分
我需要能够浏览到 10.XX.XX.XX 才能查看我的内容。