Next.js+;MDX增强型不允许Typescript模板文件

Next.js+;MDX增强型不允许Typescript模板文件,next.js,Next.js,我基本上遵循了这里的教程,使用了这个Next.js插件,但是当我尝试添加一个扩展名为.tsx或.ts的模板文件,或者引用模板文件中的另一个组件,即.tsx或.ts时,我会收到一个错误,说“找不到模块”。我可以不在模板中使用其他.tsx文件,例如,我可以将其用于页面或组件,而不是模板中的引用 next.config.js文件: constwithplugins=require('next-compose-plugins'); const rehypePrism=require('@mapbox/r

我基本上遵循了这里的教程,使用了这个Next.js插件,但是当我尝试添加一个扩展名为.tsx或.ts的模板文件,或者引用模板文件中的另一个组件,即.tsx或.ts时,我会收到一个错误,说“找不到模块”。我可以不在模板中使用其他.tsx文件,例如,我可以将其用于页面或组件,而不是模板中的引用

next.config.js文件:

constwithplugins=require('next-compose-plugins');
const rehypePrism=require('@mapbox/rehypePrism');
const mdx=require('next-mdx-enhanced')({
defaultLayout:true,
文件扩展名:['mdx','md'],
rehypePlugins:[rehypePrism],
});
//您可以在此对象中调整其他“基础下一步”选项
//我们使用它来告诉Next也处理.md和.mdx文件
const nextConfig={
页面扩展:['js','jsx','ts','tsx','mdx','md'],
未来:{
网页5:错误,
},
};
module.exports=withPlugins(
[
mdx,
//您可以向该阵列添加更多插件及其配置
],
下一步配置
)
.babelrc文件(不确定这是否重要):


{
“预设”:[“下一个/巴别塔”],
“插件”:[“导入全局数组”]
}

我不知道为什么,但我必须更新网页配置以包含“ts”和“tsx”扩展。下面是我用来完成此任务的next.config.js中的代码,可以将其与上面的原始代码进行比较,以了解其中的差异

constwithplugins=require('next-compose-plugins');
const rehypePrism=require('@mapbox/rehypePrism');
const mdx=require('next-mdx-enhanced')({
defaultLayout:true,
文件扩展名:['mdx','md'],
rehypePlugins:[rehypePrism],
});
constwebpackconfig=(配置,{buildId,dev,isServer,defaultLoaders,webpack})=>{
//注:我们提供上述网页,因此您不应“要求”它
//添加对.tsx和.ts模板的支持
config.resolve.extensions.push('.tsx','.ts');
//重要提示:返回修改后的配置
返回配置
};
//您可以在此对象中调整其他“基础下一步”选项
//我们使用它来告诉Next也处理.md和.mdx文件
const nextConfig={
页面扩展:['js','jsx','ts','tsx','mdx','md'],
webpack:webPackConfig,
};
module.exports=withPlugins(
[
mdx,
//您可以向该阵列添加更多插件及其配置
],
下一步配置
)