这个未定义的javascript原型方法

时间:2015-10-31 07:56:59

标签: javascript ecmascript-6

我正在使用支持ES6的构建工具,我有以下代码:

function Message(subject, body) {
    this.subject = subject;
    this.body = body;
    this.unread = true;
}

Message.prototype.markAsRead = function() {
    this.unread = false;
}

export {Message};

稍后在另一个文件中执行此操作:

import {Message} from './application/Message.js';
var message = new Message("hey", "there");
message.markAsRead();

我在markAsRead()方法中遇到以下错误:

Uncaught TypeError: Cannot set property 'unread' of undefined

该方法内的this控制台日志返回undefined

这是我导入/导出Message的方式吗?这是ES6中不赞成的东西吗?我编写ES5 JS时没有这个问题,但我觉得这很简单,我做错了。

0 个答案:

没有答案