【问题标题】:Identifier from require() is reported as undefined来自 require() 的标识符报告为未定义
【发布时间】:2017-09-05 03:07:04
【问题描述】:

我在 node.js 中。我有两个文件。

winston.js:

class Winston {
    constructor(count) {
        this.count = count
    }
}

start.js

const winston = require('./winston')
let myWinston = new Winston(1)

当我运行 start.js,(node ./start.js)

我收到一个错误:

ReferenceError: Winston is not defined

有人知道我应该如何包含 Winston 文件吗?

【问题讨论】:

标签: javascript node.js


【解决方案1】:

仔细查看Winston 中的大写字母W

// start.js
const Winston = require('./winston')
let myWinston = new Winston(1)

你需要在另一个文件中export default

// winston.js
export default class Winston {
    constructor(count) {
        this.count = count
    }
}

【讨论】:

    【解决方案2】:

    winston.js:

    你没有导出 Winston 类。

    export.defaults = class Winston {
        constructor(count) {
            this.count = count
        }
    }
    

    start.js

    你应该使用 require 的结果,而不是 Winston。

    const winston = require('./winston')
    let myWinston = new winston(1)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多