Netlify CMS预览和gatsby-remark-embed-video之间的冲突

时间:2019-04-01 20:31:02

标签: gatsby netlify-cms

我正在尝试使用gatsby-remark-embed-video创建一个youtube编辑器组件。我正在使用Gatsby,Netlify CMS和Netlify。我想在Netlify CMS的预览中预览视频(可以是视频本身或图像)。但是,这导致冲突。如果可以在Netlify CMS中使用,则对盖茨比不起作用,反之亦然。

gatsby-remark-embed-video依靠模式youtube: ID嵌入视频,该视频在gatsby上可以正常工作。问题在于,使用Netlify CMS时,它会将youtube: ID解析为降价代码,因为通常我们使用Backtick(重音符)来编写代码!

{
  id: 'youtube',
  label: 'Youtube',
  fields: [{ name: 'id', label: 'Youtube Video ID', widget: 'string' }],
  pattern: /^`youtube: (\S+)`$/,
  fromBlock: match => {
    const id = match[1];
    return { id };
  },
  toBlock: obj => `\`youtube: ${obj.id}\``,
  toPreview: obj =>
    `<img src="http://img.youtube.com/vi/${
      obj.id
    }/maxresdefault.jpg" alt="Youtube Video"/>`
}

总而言之,Netlify CMS基本上不起作用。一直以来,它都会在Netlify CMS预览中产生一行代码。如果我从markdown文件中删除反引号(重音符号),则它是通过普通文本阅读的,而不像视频。我不知道该怎么办,有人可以帮我吗?

谢谢! =)

Netlify CMS在我的预览中正在阅读什么: image

0 个答案:

没有答案