Javascript 下一步,将数据属性添加到脚本标记
当我的下一个JS应用程序被编译时,它会生成一个脚本文件列表,包括如下内容Javascript 下一步,将数据属性添加到脚本标记,javascript,webpack,next.js,Javascript,Webpack,Next.js,当我的下一个JS应用程序被编译时,它会生成一个脚本文件列表,包括如下内容 <script src="/_next/static/chunks/main-1234.js" async=""></script> <script src="/_next/static/chunks/webpack-1234.js" async=""></script> <script s
<script src="/_next/static/chunks/main-1234.js" async=""></script>
<script src="/_next/static/chunks/webpack-1234.js" async=""></script>
<script src="/_next/static/chunks/framework.1234.js" async=""></script>
<script src="/_next/static/chunks/1234.5678.js" async=""></script>
<script src="/_next/static/chunks/commons.1234.js" async=""></script>
<script src="/_next/static/chunks/pages/_app-1234.js" async=""></script>
<script src="/_next/static/chunks/1234.5678.js" async=""></script>
<script src="/_next/static/chunks/pages/%5B%5B...path%5D%5D-1234.js" async=""></script>
<script src="/_next/static/1234/_buildManifest.js" async=""></script>
<script src="/_next/static/1234/_ssgManifest.js" async=""></script>
<script data-cookieconsent="ignore" src="/_next/static/chunks/pages/%5B%5B...path%5D%5D-1234.js" async=""></script>
我想像这样为其中一些添加自定义数据属性
<script src="/_next/static/chunks/main-1234.js" async=""></script>
<script src="/_next/static/chunks/webpack-1234.js" async=""></script>
<script src="/_next/static/chunks/framework.1234.js" async=""></script>
<script src="/_next/static/chunks/1234.5678.js" async=""></script>
<script src="/_next/static/chunks/commons.1234.js" async=""></script>
<script src="/_next/static/chunks/pages/_app-1234.js" async=""></script>
<script src="/_next/static/chunks/1234.5678.js" async=""></script>
<script src="/_next/static/chunks/pages/%5B%5B...path%5D%5D-1234.js" async=""></script>
<script src="/_next/static/1234/_buildManifest.js" async=""></script>
<script src="/_next/static/1234/_ssgManifest.js" async=""></script>
<script data-cookieconsent="ignore" src="/_next/static/chunks/pages/%5B%5B...path%5D%5D-1234.js" async=""></script>
我在下一个.config.js文件中尝试过这样做,因为我知道可以在其中进行网页覆盖,但我没有看到向动态生成的js文件添加这样的数据属性的方法。另一种解决方案是扩展
\u document.js
文件中的NextScript
类,至于在Next.js生成的脚本中包含自定义的data-*
属性
<script src="/_next/static/chunks/main-1234.js" async=""></script>
<script src="/_next/static/chunks/webpack-1234.js" async=""></script>
<script src="/_next/static/chunks/framework.1234.js" async=""></script>
<script src="/_next/static/chunks/1234.5678.js" async=""></script>
<script src="/_next/static/chunks/commons.1234.js" async=""></script>
<script src="/_next/static/chunks/pages/_app-1234.js" async=""></script>
<script src="/_next/static/chunks/1234.5678.js" async=""></script>
<script src="/_next/static/chunks/pages/%5B%5B...path%5D%5D-1234.js" async=""></script>
<script src="/_next/static/1234/_buildManifest.js" async=""></script>
<script src="/_next/static/1234/_ssgManifest.js" async=""></script>
<script data-cookieconsent="ignore" src="/_next/static/chunks/pages/%5B%5B...path%5D%5D-1234.js" async=""></script>
///pages//\u document.js
从“next/Document”导入文档,{Html,Head,Main,NextScript}
类CustomNextScript扩展了NextScript{
获取脚本(文件){
const originalscript=super.getScripts(文件);
返回originalScripts.map((脚本)=>{
返回React.cloneElement(脚本{
“数据cookieconsent”:this.props.cookieconsent
});
});
}
}
类CustomDocument扩展文档{
render(){
返回(
)
}
}
导出默认自定义文档
智能解决方案。谢谢