Включая внешний JavaScript в Гэтсби, используя шлем
У меня есть этот код в 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 не включен в проект... Я пробовал разные синтаксические вещи, а также перезапустил проект, пока ничего не работает.
1 ответ
Шлем поддерживает все допустимые теги заголовка, такие как заголовок, база, мета, ссылка, noscript, стиль, включая тег сценария. Так что вы можете сделать это так:
<Helmet>
<script src="http://netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js" type="text/javascript" />
</Helmet>