Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/437.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 盖茨比跑得很好;不';不显示应明确标记的错误(函数不存在)_Javascript_Node.js_Reactjs_Gatsby_Yarnpkg - Fatal编程技术网

Javascript 盖茨比跑得很好;不';不显示应明确标记的错误(函数不存在)

Javascript 盖茨比跑得很好;不';不显示应明确标记的错误(函数不存在),javascript,node.js,reactjs,gatsby,yarnpkg,Javascript,Node.js,Reactjs,Gatsby,Yarnpkg,我有一个盖茨比的项目,效果非常好。我刚才复制了整个项目(没有node modules文件夹),并进行了纱线安装,因为我想测试一些东西。然而,当我运行该项目时,我遇到了几个错误。我刚刚检查了其中一个,很明显这是一个需要修复的错误。我调用的函数在任何地方都不存在 然而,我想知道为什么我最初的项目至少没有抛出任何错误或警告?这对我来说毫无意义,让我担心。您知道为什么会这样吗?假设您描述的场景(克隆的工作项目),问题一定来自它们之间的不同节点版本,或者由于某些包版本冲突。有几种方法可以解决此问题: 节点

我有一个盖茨比的项目,效果非常好。我刚才复制了整个项目(没有node modules文件夹),并进行了
纱线安装
,因为我想测试一些东西。然而,当我运行该项目时,我遇到了几个错误。我刚刚检查了其中一个,很明显这是一个需要修复的错误。我调用的函数在任何地方都不存在


然而,我想知道为什么我最初的项目至少没有抛出任何错误或警告?这对我来说毫无意义,让我担心。您知道为什么会这样吗?

假设您描述的场景(克隆的工作项目),问题一定来自它们之间的不同节点版本,或者由于某些包版本冲突。有几种方法可以解决此问题:

节点版本
  • 在根项目中添加
    .nvmrc
    文件。您只需要在那里添加源项目的当前节点版本。例如:
    12.0.1
    ,没有其他内容。此文件将锁定节点版本并在克隆项目中使用。这是最干净和可扩展的方式

  • 手动更改
    nvm
    并在目标文件夹中运行节点版本。一旦知道源项目节点的版本,就必须在克隆的项目中使用
    nvm use VERSION\u

请记住,更改节点版本后,必须使用
warn install
再次安装所有软件包。强烈建议也删除
.cache
文件夹

软件包版本
假设您的
包.json
有一个类似
^2.3
的依赖项,例如,在源项目中,您的依赖项位于
2.31
。如果在
安装后克隆该项目,则可能需要另一个更高版本,而不是
2.31
。这可能会由于依赖项之间的冲突而导致编译错误。修复它的方法是克隆你的
纱线锁
,因为它包含你项目的当前工作版本。

非常感谢。有没有办法检查每个单独的盖茨比项目中使用的是哪个节点版本?只需在每个项目中运行
node-v