【问题标题】:including external javascript in Gatsby using Helmet在 Gatsby 中使用 Helmet 包括外部 javascript
【发布时间】:2018-12-23 16:25:40
【问题描述】:

我在布局文件夹的 index.js 中有这段代码:

<StaticQuery
    query={graphql`
      query SiteTitleQuery {
        site {
          siteMetadata {
            title
          }
        }
      }
    `}
    render={data => (
      <>
        <Helmet
          title={data.site.siteMetadata.title}
          meta={[
            {name: 'description', content: 'Sample'},
            {name: 'keywords', content: 'sample, something'},
          ]}
          script={[
            {"src": "http://netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js", "type": "text/javascript"}
          ]}
        >
          <html lang="en" />

        </Helmet>
        <Header siteTitle={data.site.siteMetadata.title} />
        <div>
          {children}
        </div>
        <Footer />
      </>
    )}
  />

但是 Bootstrap.js 文件不包含在项目中... 我尝试了各种语法并重新启动了项目,到目前为止没有任何效果。

【问题讨论】:

  • 公共目录下有index.html吗?
  • 是的。但那是一个生成的文件
  • 不确定它与 react-helmet 的行为如何,但在其他情况下,如果您想添加一些外部脚本,您可以将其添加到那里,并且您添加的任何内容都将在构建 index.html 中可用文件

标签: reactjs gatsby react-helmet


【解决方案1】:

Helmet 支持所有有效的头部标签,如 title、base、meta、link、noscript、style,包括 script 标签。所以你可以这样做:

<Helmet>
  <script src="http://netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js" type="text/javascript" />
</Helmet>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-05-26
    • 1970-01-01
    • 1970-01-01
    • 2020-09-17
    • 1970-01-01
    • 2021-06-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多