回调中的JS类调用方法

时间:2017-02-01 21:32:32

标签: javascript class callback

我有一个班级名称&动作。此类构造参数是频率(分钟,小时)。

this.callback是目前的方法测试。

var Request = require("request");

class Action {

    constructor (frequency) {
        this.frequency = frequency;
        // Get JSON test
        this.endpoint = 'http://website.app/api/test';

        this.cron();
    }

    cron () {
        var options = {
            method: 'POST',
            url: this.endpoint,
            headers: {
                'cache-control': 'no-cache',
            },
            formData: {
                frequency: this.frequency
            }
        };

        Request(options, this.callback);
    }

    callback (error, response, body) {
        this.example();
    }

    example () {
        console.log('test');
    }

}

new Action('everyMinute');

当我在回调方法上调用this.example()时,我收到此错误:

C:\Users\Maxence\Desktop\Twools\test.js:28
        this.example();
             ^

TypeError: this.exemple is not a function
    at Request.callback [as _callback] (C:\Users\Maxence\Desktop\Twools\test.js:28:14)
    at Request.self.callback (C:\Users\Maxence\Desktop\Twools\node_modules\request\request.js:186:22)
    at emitTwo (events.js:106:13)
    at Request.emit (events.js:191:7)
    at Request.<anonymous> (C:\Users\Maxence\Desktop\Twools\node_modules\request\request.js:1081:10)
    at emitOne (events.js:96:13)
    at Request.emit (events.js:188:7)
    at IncomingMessage.<anonymous> (C:\Users\Maxence\Desktop\Twools\node_modules\request\request.js:1001:12)
    at Object.onceWrapper (events.js:290:19)
    at emitNone (events.js:91:20)

0 个答案:

没有答案
相关问题