da4203d032
This adds a new ESLint rule to `eslint-plugin-next` to check that `next/script` components with inline content have the required `id` attribute. Also adjusted the code example for inline scripts in the `next/script` docs, which were actually missing an `id` attribute. And also updated the `next/scripts` integration test to also have the required `id` attribute. Unsure about the required heading levels in the errors .md document (other examples have h1 and h4??) ## Bug - [ ] Related issues linked using `fixes #number` - [ ] Integration tests added - [ ] Errors have helpful link attached, see `contributing.md` ## Feature - [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR. - [ ] Related issues linked using `fixes #number` - [ ] Integration tests added - [x] Documentation added - [ ] Telemetry added. In case of a feature if it's used or not. - [x] Errors have helpful link attached, see `contributing.md` ## Documentation / Examples - [ ] Make sure the linting passes
645 B
645 B
next/script components with inline content require an id
attribute
Why This Error Occurred
next/script
components with inline content require an id
attribute to be defined to track and optimize the script.
Possible Ways to Fix It
Add an id
attribute to the next/script
component.
import Script from 'next/script'
export default function App({ Component, pageProps }) {
return (
<>
<Script id="my-script">{`console.log('Hello world!');`}</Script>
<Component {...pageProps} />
</>
)
}