Gatsby项目在开发中有效,但是在部署它时出现错误(netlify,zeit)

时间:2019-11-11 11:06:48

标签: node-modules gatsby netlify

我的gatsby项目具有以下结构:

    Project
          node_modules
          plugins
                gatsby-source-cloud       // Local Plugin with code from scratch
                        node_modules
                        gatsby-node.js
                        package.json
                        utis.js
          public
          src
          gatsby-config.js // Here one of the plugins resolve to the local plugin above
          gatsby-node.js
          package.json 

此代码在开发环境中运行完美,但是在部署到github后尝试投入生产(netlify,zeit)时,抛出错误:

嵌套在本地插件中的gatsby-node.js(插件/gatsby-source-cloud/gatsby-node.js)找不到嵌套的node_modules中的一个模块(pugins / gatsby-source-cloud / node_modules)。

2 个答案:

答案 0 :(得分:0)

您无法部署Gatsby源代码。您必须运行gatsby build并部署HTML,CSS和JS的输出。

看看https://www.gatsbyjs.org/docs/deploying-and-hosting/

答案 1 :(得分:0)

我已经排序。我忘了在这里发布解决方案。 只是从根目录而不是从嵌套目录编​​译嵌套的package.json。 为此,我们需要在脚本中添加更多属性:

"postinstall": "cd plugins/gatsby-source-cloud && npm i"

因此,然后将所有package.json(一个在根目录中,另一个在gatsby-source-cloud中)从根目录中正确编译,然后部署到服务器。