Как мне экспортировать все модули, функции и т. Д. c в node.js из одного индексного файла? - PullRequest
1 голос
/ 02 августа 2020

Вопрос в том, как мне воспроизвести импорт / экспорт es6, но в node.js? У меня много контроллеров, и у каждого есть класс. Я хочу экспортировать эти классы из одного файла, потому что он сохраняет много строк.

Пример в es6:

export { default as UserCtrl } from "./UserController";
export { default as DialogCtrl } from "./DialogController";
export { default as MessageCtrl } from "./MessageController";
export { default as UploadFileCtrl } from "./UploadController";

Ответы [ 2 ]

1 голос
/ 03 августа 2020

В Node.js> = 13 мы можем использовать механизм импорта / экспорта ES6. Но в Common JS и устаревшем стиле мы можем сделать это:

// In your exports.js
module.exports = {
    UserCtrl: require('./User.js'),
    MessageCtrl: require('./Message.js'),
    DialogCtrl: require('./Dialog.js')
}
// Import whereever you want
const { UserCtrl, DialogCtrl, MessageCtrl } = require('./exports.js');
0 голосов
/ 03 августа 2020

Файл, который вы хотите экспортировать (скажем, экспорт. js)

exports.getLogin = (req, res, next) => {
function here
}
exports.postLogin = (req, res, next) => {
function here
}
exports.getAnything = (req, res, next) => {
function here
}
exports.postAnything = (req, res, next) => {
function here
}

и на странице, которую вы хотите импортировать:

const constName = require('../PATH/export');

app.get('/PATH', constName.getLogin)

Таким образом, вы можете использовать поставьте точку constName над именем экспортируемой функции. Надеюсь, это помогло.

...