module.exports не возвращает функции в nodejs - PullRequest
0 голосов
/ 11 ноября 2018

Все, кто я новичок в NODE.JS, я использую функцию module.exports, внутри которой я написал функцию hello. Я пытался импортировать из другого файла. Но это не работает. Может кто-нибудь решить эту проблему. Спасибо заранее ...

index.js


module.exports=function(){   
         
    hello:(data)=>{
       return "Good night" +data;
    }
}



trail.js



const index=require('./index');
const e=new index();
console.log(e.hello("abc"));

Ответы [ 4 ]

0 голосов
/ 11 ноября 2018

Я не знаю, какое правильное решение вы пытаетесь узнать, но, возможно, вы хотели бы пойти по этому пути:

index.js:

exports.hello = data => {
  return 'Good night ' + data;
};

trail.js:

const e = require('./index');
console.log(e.hello('Jhonny'));
0 голосов
/ 11 ноября 2018

Когда вы используете функцию в качестве конструктора, создавая new объекты из нее , вам придется ссылаться на каждый из этих объектов с помощью this, чтобы назначить их свойства:

module.exports=function(){
    this.hello = (data) => {
        return "Good night" +data;
    };
}

Синтаксис <identifier>: имеет разные значения в зависимости от его размещения / окружения. При использовании в теле функции в начале оператора он определяет только метку . Чтобы оно определяло свойство, оно должно быть использовано внутри инициализатора объекта .

0 голосов
/ 11 ноября 2018

Вы также можете использовать его следующим образом:

module.exports=function(data){   
    return "Good night" +data;
}

const temp = require('./index');
console.log(temp('demo developer'));
0 голосов
/ 11 ноября 2018

Я нашел решение немного, мы должны изменить код в index.js. В ES6 доступны функциональные конструкторы. Мы должны использовать это ключевое слово, это ключевое слово относится к текущему классу объектов. Так как в JavaScript функции являются первым классом Objects.correct me Если Я не прав. опубликовать ответ, если кто-нибудь знает Другие решения также всегда приветствуются ....

Index.js


module.exports=function(){   

   this.hello=(data)=>{
       return "Good night" +data;
    }
}

Trail.js

const index=require('./index');
const e=new index();
console.log(e.hello("abc"));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...