如何在新建Next.js应用中使用Bootstrap的「Good」模板?
在Next.js中使用Bootstrap「Good」模板的正确方式
直接引入预览CSS的局限性
直接引入你提到的预览地址CSS文件可以临时做测试,但绝对不适合生产环境:
- 预览链接的资源随时可能失效或被修改,导致应用样式崩溃
- 「Good」模板依赖字体、图标、自定义JS组件等其他资源,仅引入CSS会导致部分交互功能失效、样式显示不全(比如图标不加载、动态效果无法运行)
规范的集成方案(模板提供商推荐流程)
「Good」是基于Bootstrap开发的第三方模板,正确的集成步骤如下:
- 获取完整模板资源:从官方渠道下载模板的完整包(包含CSS、JS、字体、图片等所有静态资源)
- 在Next.js中配置资源:
- 将模板的静态资源目录(如
assets)复制到Next.js项目的public目录下 - 在
pages/_app.js(或_app.tsx)中通过本地路径引入模板的主CSS文件:import '../public/assets/css/style.bundle.css'; // 若模板未内置Bootstrap核心CSS,需先引入 import 'bootstrap/dist/css/bootstrap.min.css'; - 若模板包含自定义JS组件或依赖Bootstrap JS,使用
next/script组件加载对应的JS文件(避免阻塞页面渲染):import Script from 'next/script'; function MyApp({ Component, pageProps }) { return ( <> <Script src="/assets/js/scripts.bundle.js" strategy="lazyOnload" /> <Component {...pageProps} /> </> ); } export default MyApp;
- 将模板的静态资源目录(如
- 适配Next.js的SSR特性:
- 若模板中有依赖浏览器环境的JS代码,需用动态导入(
dynamic)或在useEffect中初始化,避免SSR时报错
- 若模板中有依赖浏览器环境的JS代码,需用动态导入(
额外注意事项
- 若项目未预先集成Bootstrap核心,需先通过npm安装:
npm install bootstrap,再在_app.js中引入核心CSS和JS - 生产环境务必使用本地打包的静态资源,不要依赖外部预览链接,保证稳定性和加载速度
内容的提问来源于stack exchange,提问作者János
相关产品推荐
相关产品推荐

