0

I have a Class name's Action. This Class construct parameters is frequency (minute, ou hour).

this.callback is a method test for this moment.

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');

When I call this.example() on callback method, I get this error:

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)
  • I'll guess you meant `this.example()`, but that wouldn't work either for the reasons laid out in the canonical question. – Bergi Feb 01 '17 at 21:34
  • This is this.example() yes, but that wouldn't work... –  Feb 01 '17 at 21:36

0 Answers0