【问题标题】:TypeError: require.extensions.hasOwnProperty is not a function - on running gulpTypeError: require.extensions.hasOwnProperty is not a function - 在运行 gulp
【发布时间】:2019-12-03 07:29:08
【问题描述】:

我试图在我的项目目录中运行gulp。我浏览了很多文章。还可以尝试在cmd 中运行大多数给定的命令(作为解决方案)。但是同样的问题会发生。

if (!require.extensions.hasOwnProperty(ext)) {
                         ^
TypeError: require.extensions.hasOwnProperty is not a function

这就是我的 package.json 的样子。

{
  "private": true,
  "devDependencies": {
    "gulp": "^3.9.1",
    "laravel-elixir": "^2.3.13"
  },
  "dependencies": {
    "bower": "^1.5.2",
    "require-dir": "^1.2.0"
  }
}

如果有人能帮我解决这个问题,那就太好了。

【问题讨论】:

    标签: laravel laravel-5 gulp node-modules laravel-elixir


    【解决方案1】:

    终于找到答案了。 我只是在<project>/node_modules/laravel-elixir/node_modules/require-dir/index.js 文件中更改了以下代码行。

    if (!require.extensions.hasOwnProperty(ext)) {
    

    作为:

    if (!Object.prototype.hasOwnProperty.call(require.extensions, ext)) {
    

    现在终于可以使用了。

    【讨论】:

    • 不推荐这样做,因为你不应该修改 node_modules 中的文件。每当您更新软件包时,您的更改可能会被删除。您的问题似乎是本期讨论的内容:github.com/tjunnone/npm-check-updates/issues/…
    • 感谢@Thiago 提供的信息。但我也经历了这个讨论。它也对我不起作用。找不到比这更好的解决方案了。
    【解决方案2】:

    我通过使用较小版本的 node.js 解决了这个问题。使用 node v 8.9.1 时出现此错误。通过降级到 6.5.0 来修复它。我使用 NVM 来交换版本

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-24
      • 2015-06-24
      • 1970-01-01
      • 2015-10-23
      • 2017-01-04
      相关资源
      最近更新 更多