我在Next.js上用Tailwind CSS做了一个项目,我在我的一些页面上使用了MDX。在MDX文件中有这样的导出行:
export default ({children}) => <div className='prose'>{children}</div>
字符串
这一行显示错误:一个模块不能有多个默认导出。ts(2528)
此外,我还使用了这样的脚注:
Mübalağa ve ziyade[^ziyade]lik manası...
[^ziyade]: ziyade: fazla, çok
型
这一行显示了这个错误:
No link definition found: '^ziyade'(link.no-such-reference)
型
直到今天,还没有出现过这样的错误。我已经试着找了几个小时的解决方案,但我找不到。
我尝试按照以下说明更改.eslintrc.json设置:Fixing MDX linting errors in Next.js using eslint-plugin-mdx,但不起作用。
我已经更新了所有的包和Next.js,但没有工作。
我正在使用VS Code MDX扩展进行语法突出显示,我相信这些错误与此扩展有关。我试图按照他们页面中的描述更改其设置,但也不起作用。
package.json
"dependencies": {
"@mdx-js/loader": "^3.0.0",
"@mdx-js/react": "^3.0.0",
"@next/mdx": "^14.0.2",
"rehype-slug": "^6.0.0",
"remark-gfm": "^4.0.0",
},
型
next.config.mjs
import remarkGfm from 'remark-gfm'
import rehypeSlug from 'rehype-slug';
import nextMDX from '@next/mdx'
const withMDX = nextMDX({
extension: /\.mdx?$/,
options: {
remarkPlugins: [
remarkGfm, // GitHub Flavored Markdown
],
rehypePlugins: [
rehypeSlug, // add IDs to any h1-h6 tag that doesn't have one, using a slug made from its text
],
}
})
/** @type {import('next').NextConfig} */
const nextConfig = {
output: 'export',
trailingSlash: true,
pageExtensions: ['js', 'jsx', 'ts', 'tsx', 'md', 'mdx'],
型
tsconfig.json
"mdx": {
"plugins": ["remark-gfm"]
},
型
有没有办法避免这些错误?谢谢。
1条答案
按热度按时间ny6fqffe1#
这个错误是由版本1.5.0引起的。我已经删除了该版本并安装了1.4.0。错误消失了。