【发布时间】:2022-04-15 21:56:38
【问题描述】:
我正在使用脚本标记将小部件添加到我的 Next.js 应用程序。我已经为这个小部件创建了一个部分组件,但是当我运行应用程序时,它呈现在我的页脚下方,但它应该作为一个部分组件呈现在上面。有人可以帮我解决这个问题吗?
您将在下面看到问题的屏幕截图、我的index.js、脚本组件和我希望渲染它的组件。
另一位用户询问了question related to the same issue。有没有人知道怎么解决?
import Head from 'next/head'
import Image from 'next/image'
import styles from '../styles/Home.module.scss'
import Header from './src/components/Header'
import Services from './src/components/Services'
import Portfolio from './src/components/Portfolio'
import ContactCard from './src/components/ContactCard'
import Booking from './src/components/Booking'
export default function Home() {
return (
<div className="container-fluid">
<Head>
<title>Dr Cut TheBarber Show</title>
<meta name="description" content="Generated by create next app" />
<link rel="icon" href="/favicon.ico" />
</Head>
<main className="main">
<Header />
<Services />
<Portfolio />
<ContactCard />
<Booking />
</main>
<footer className="footer text-center">
<a
className="text-decoration-none text-dark"
href="https://vercel.com?utm_source=create-next-app&utm_medium=default-template&utm_campaign=create-next-app"
target="_blank"
rel="noopener noreferrer"
>
Powered by{' '}
<span className={styles.logo}>
<Image src="/vercel.svg" alt="Vercel Logo" width={72} height={16} />
</span>
</a>
</footer>
</div>
)
}
Booksy.js
import script from 'next/script';
//import Script from 'next/script'
import { useEffect } from 'react';
const Booksy = () =>{
useEffect(() => {
const script = document.createElement('script');
script.src="https://booksy.com/widget/code.js?id=17618&country=es&lang=es";
script.async = true;
document.body.appendChild(script);
return () => {
document.body.removeChild(script);
}
}, [])
return script
}
export default Booksy;
Booking.js
import Booksy from "./Booksy";
function Booking () {
return (
<div className="page-section">
<Booksy />
</div>
)
}
export default Booking;
【问题讨论】:
标签: reactjs next.js script-tag