Next.js: 将 pages/_component.js 移动到 components/Component.js

创建于 2017-03-17  ·  3评论  ·  资料来源: vercel/next.js

  • pages/_document.js > components/Document.js
  • pages/_error.js > components/Error.js

以上都不是_pages_——它们是特殊的_components_。 由于每个人都采用在 $# pages #$ 旁边有一个components文件夹的约定,因此将它们移动到这里并记录这些是使用的 _reserved_ 组件名称会更好和“更正确”IMO由下一步。

我认为这既简洁又会简化您的代码拆分和捆绑逻辑,因为您可以读取pages中的 _all_ JS 文件,而不必过滤掉这些特殊情况。 它还将消除略显丑陋的下划线命名文件……不过,这只是我的意见!

最有用的评论

刚刚阅读了这个 PR https://github.com/zeit/next.js/pull/936 ,这个提议也可以在next.config.js对象中解决,就像pagesDirectory一样。

您可以传递另外几个道具,例如documentComponenterrorComponent

// next.config.js
module.exports = {
  pagesDirectory: 'views',
  documentComponent: 'components/Document.js',
  errorComponent: 'components/Error.js'
}

所有3条评论

谢谢。 你得到了一个有效的观点。
但在短期内,我们不会改变它。

随着2.0.0即将发布,我认为这可能是一个很好的机会来引入这样的重大变化。 您能否不为这两个选项提供支持并向使用pages/_document.jspages/_error.js的用户发出警告,建议他们移动和重命名文件? 这样它就不会破坏任何东西,但会允许人们迁移。

刚刚阅读了这个 PR https://github.com/zeit/next.js/pull/936 ,这个提议也可以在next.config.js对象中解决,就像pagesDirectory一样。

您可以传递另外几个道具,例如documentComponenterrorComponent

// next.config.js
module.exports = {
  pagesDirectory: 'views',
  documentComponent: 'components/Document.js',
  errorComponent: 'components/Error.js'
}
此页面是否有帮助?
0 / 5 - 0 等级