我用的是NextJS 13。3(app目录),我尝试使用contentlayer来提供我的mdx文件。
tsconfig.json
{
"compilerOptions": {
...
"baseUrl": ".",
"paths": {
"contentlayer/generated": ["./.contentlayer/generated"]
}
},
"include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts", ".contentlayer/generated"],
}
contentlayer。config.js
import { defineDocumentType, makeSource } from 'contentlayer/source-files';
export const Post = defineDocumentType(() => ({
name: 'Post',
contentType: 'mdx',
filePathPattern: 'posts/*.mdx',
}));
export default makeSource({
contentDirPath: 'content',
documentTypes: [Post],
});
app/blog/[slug]/page。土耳其电信公司
import { allPosts } from 'contentlayer/generated';
此导入会给我带来以下错误:
找不到模块“contentlayer/generated”或其相应的类型声明
1条答案
按热度按时间ddarikpa1#
这个Github问题可能会有所帮助:https://github.com/contentlayerdev/contentlayer/issues/415
另外,不要忘记设置
next.config.js
(或next.config.mjs
)设置:在我的例子中,当我编写
yarn contentlayer dev
时,这个问题就解决了(你可以使用任何其他包管理器(npm
,npx
,...)而不是yarn
)命令。