【问题标题】:Builder error while uploading Next.js project to Heroku将 Next.js 项目上传到 Heroku 时生成器错误
【发布时间】:2022-01-17 07:14:41
【问题描述】:

我在将 next.js 应用程序部署到 Heroku 时遇到问题。建设者说:

remote: postcss-resolve-url: postcss.plugin was deprecated. Migration guide:
remote: https://evilmartians.com/chronicles/postcss-8-plugin-migration
remote: Failed to compile.
remote:
remote: ./pages/index.js
remote: Module not found: Can't resolve '../styles/Constructionpage.module.scss' in '/tmp/build_642a3d7a/pages'
remote:

这是我的 /pages/index.js 文件导入:

import style from "../styles/Constructionpage.module.scss";
import Head from "next/head";

结构如下:

pages
  -index.js
styles
  -Constructionpage.module.scss

但在本地一切正常,没有任何错误/警告。 有谁知道为什么会这样?谢谢!

【问题讨论】:

    标签: heroku sass deployment next.js


    【解决方案1】:

    当您使用yarn dev 运行您的网站时,您正在使用本地服务器在导航到每个页面时呈现您的网站。在您构建时,Next 会生成您网站上的每个页面。您的错误可能来自您未在 dev 中访问的页面。

    请记住,Next 是为 server side rendering static assets 设置的,因此它会提取您提供给它的任何数据(和 CSS),并返回一个 performance-optimized set of pages,以便在客户端重新水化。

    PostCSSnatively set up to work with Next.js。检查他们的文档,如果它仍然给你带来麻烦,你必须提供更多的背景来调试它。

    【讨论】:

    • 如果我理解正确的话,它应该在构建时崩溃,但是当我运行 npm run build 时它构建得很好。它只在heroku上崩溃。另外,heroku存储库是否可能存在一些冲突?我问是因为目前在 heroku 上有另一个版本的构建,其中相同的 scss 文件有其他名称
    • 是的,在 Heroku 可能是不同的部门
    【解决方案2】:

    我刚刚将文件名更改为初始文件名。它是 "constructionpage.module.scss",然后我将其更改为 "Construstionpage.module.scss",它开始报错。我把它改回 "constructionpage.module.scss" 并且它起作用了。我不知道为什么实际上:) 所有导入都是正确的

    【讨论】:

    • 你能说出之前的文件名是什么吗?
    • 正如目前所写,您的答案尚不清楚。请edit 添加其他详细信息,以帮助其他人了解这如何解决所提出的问题。你可以找到更多关于如何写好答案的信息in the help center
    猜你喜欢
    • 2022-08-14
    • 2020-03-13
    • 1970-01-01
    • 2017-01-16
    • 2020-08-17
    • 2018-06-14
    • 1970-01-01
    • 2017-03-12
    • 1970-01-01
    相关资源
    最近更新 更多