如何将 facebook 插件页面添加到 gatsby (react)
how to add facebook plugin page to gatsby (react)
我一直在尝试将 facebook 提要添加到我正在开发的 gatsby 网站,但它似乎不起作用!
我尝试在 gatsby 中添加脚本-ssr.js
const React = require("react")
exports.onRenderBody = ({ setPostBodyComponents }) => {
setPostBodyComponents([
<div id="fb-root"></div>,
<script
async={true}
defer={true}
crossOrigin="anonymous"
src="https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v6.0&appId=2186738638294469&autoLogAppEvents=1"
></script>,
])
}
然后在组件
<div
className="fb-page"
data-href="https://www.facebook.com/TechnoBondCo/"
data-tabs="timeline"
data-width="400"
data-height="400"
data-small-header="true"
data-adapt-container-width="true"
data-hide-cover="true"
data-show-facepile="false"
>
<blockquote
cite="https://www.facebook.com/TechnoBondCo/"
class="fb-xfbml-parse-ignore"
>
<a href="https://www.facebook.com/TechnoBondCo/">
تكنوبوند - صناع الكلادينج Techno Bond
</a>
</blockquote>
</div>
但它没有用,我也尝试使用 react-facebook 但我似乎无法更改 iframe 的宽度或高度
知道怎么做吗?
使用 REACT 头盔时出错
我收到此控制台错误:
- 警告“导出 'default'(导入为 'Helmet')未在 'react-helmet'
中找到
并收到此浏览器错误:
您需要使用 <Helmet>
标签,如下所示:
<Helmet>
<script async={true} defer={true} crossOrigin="anonymous" src="https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v6.0&appId=2186738638294469&autoLogAppEvents=1" />
</Helmet>
您可以查看有关 Gatsby's Helmet, and React Helmet 的更多信息,但基本上,<Helmet>
组件允许您插入一些代码,这些代码将在编译后放置在 <head>
标记内。
您可以在任何组件中使用它,例如,在 IndexPage
组件中它将是:
import { Helmet } from 'react-helmet';
const IndexPage = () => (
<Layout>
<SEO title="Live" />
<Helmet>
<script async={true} defer={true} crossOrigin="anonymous" src="https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v6.0&appId=2186738638294469&autoLogAppEvents=1" />
</Helmet>
我已经在我的本地机器上进行了测试,它可以完美加载,如下图所示:
我一直在尝试将 facebook 提要添加到我正在开发的 gatsby 网站,但它似乎不起作用!
我尝试在 gatsby 中添加脚本-ssr.js
const React = require("react")
exports.onRenderBody = ({ setPostBodyComponents }) => {
setPostBodyComponents([
<div id="fb-root"></div>,
<script
async={true}
defer={true}
crossOrigin="anonymous"
src="https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v6.0&appId=2186738638294469&autoLogAppEvents=1"
></script>,
])
}
然后在组件
<div
className="fb-page"
data-href="https://www.facebook.com/TechnoBondCo/"
data-tabs="timeline"
data-width="400"
data-height="400"
data-small-header="true"
data-adapt-container-width="true"
data-hide-cover="true"
data-show-facepile="false"
>
<blockquote
cite="https://www.facebook.com/TechnoBondCo/"
class="fb-xfbml-parse-ignore"
>
<a href="https://www.facebook.com/TechnoBondCo/">
تكنوبوند - صناع الكلادينج Techno Bond
</a>
</blockquote>
</div>
但它没有用,我也尝试使用 react-facebook 但我似乎无法更改 iframe 的宽度或高度
知道怎么做吗?
使用 REACT 头盔时出错
我收到此控制台错误: - 警告“导出 'default'(导入为 'Helmet')未在 'react-helmet'
中找到并收到此浏览器错误:
您需要使用 <Helmet>
标签,如下所示:
<Helmet>
<script async={true} defer={true} crossOrigin="anonymous" src="https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v6.0&appId=2186738638294469&autoLogAppEvents=1" />
</Helmet>
您可以查看有关 Gatsby's Helmet, and React Helmet 的更多信息,但基本上,<Helmet>
组件允许您插入一些代码,这些代码将在编译后放置在 <head>
标记内。
您可以在任何组件中使用它,例如,在 IndexPage
组件中它将是:
import { Helmet } from 'react-helmet';
const IndexPage = () => (
<Layout>
<SEO title="Live" />
<Helmet>
<script async={true} defer={true} crossOrigin="anonymous" src="https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v6.0&appId=2186738638294469&autoLogAppEvents=1" />
</Helmet>
我已经在我的本地机器上进行了测试,它可以完美加载,如下图所示: