如何调试发布或优化警告

如何调试发布或优化警告

本指南涵盖两种网站发布错误——发布错误和优化错误——及其解决策略。

1. 发布错误

如果发生发布错误,你会看到一个提示通知:

“由于页面上存在错误,发布失败。”

同时会提供一个 审查 按钮。

发布错误的常见原因

动态运行时错误

  • 站点编译器在等待组件构建时超时。

  • 浏览器检查器中的示例错误:ensureComponentsInLoader: Component loader not updated in time.

  • 解决方案:重试发布。如果问题持续,请修复或移除有问题的组件。

缺失的已使用组件

  • 由于文件重命名、函数重命名或加载错误,某个组件可能不再可用。

  • 点击 审查 按钮将在图层面板中将缺失的组件高亮显示为灰色错误占位符。

解决方案:修复或替换缺失的组件。

在 Framer 编辑器中显示组件错误。

2. 优化错误

什么是优化?

Framer 站点使用 React 构建。优化会在服务器端“预渲染”你的站点,确保访问者立即看到内容,而不是在 React 后台加载时看到空白页面。

在服务器端,无法获取访问者的某些信息(例如 cookie、窗口大小或语言等)。如果自定义代码组件(或覆盖)尝试访问这些信息,执行将会失败。此时,你会看到优化警告。

优化警告与错误

你可以在 设置 → 域名设置 → 版本 中查看优化状态。

设置中的版本部分。

你可能会看到以下状态之一:

  • 已优化:一切正常!

  • 优化警告:站点已成功优化,但在优化过程中出现了问题。(通常意味着自定义代码组件或覆盖存在问题)

    • 为什么这不好? 访问者在页面加载期间可能会看到部分内容缺失(由于自定义代码问题),或者站点的可访问性受到影响(如嵌套链接问题)。

  • 优化错误:一个或多个页面未能成功优化

    • 为什么这不好? 未优化的页面加载速度更慢,SEO 效果更差。从技术上讲:它们不会被服务器渲染、打包或压缩,并且核心网页指标表现更差。

常见原因:自定义代码组件或覆盖

依赖浏览器特定 API 的自定义代码(例如 windowdocumentnavigator)在优化期间可能无法正常工作。这是因为 Framer 的服务器在没有浏览器环境的情况下预渲染页面,导致这些 API 不可用。

如果你的代码组件在服务端渲染期间尝试访问这些 API,Framer 将隐藏该组件,并在页面加载时尝试重新渲染。结果是,在页面加载期间页面的某部分会暂时缺失,这可能会让访问者感到困惑!

要修复自定义代码错误,请参考此指南:如何修复自定义代码优化错误



通过解决这些警告并利用 Framer 内置的工具,你可以提升站点性能、改善 SEO,并为访问者创造更好的体验。

如果你仍然遇到问题,请通过我们的 联系页面 与我们联系以获得进一步帮助。

Create a free website with Framer, the website builder loved by startups, designers and agencies.