• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Czy poprawnie używam require - node.js

Object Storage Arubacloud
0 głosów
157 wizyt
pytanie zadane 15 lutego 2020 w JavaScript przez mreo Użytkownik (790 p.)

Witam, pisząc skrypt przez dluzszy czas zaczął zajmować dużo miejsca więc wedlug poradników podzieliłem go na mniejsze części, inne pliki które wczytuje za pomocą require.

Przykładowy skrypt servera

 

const express = require('express');
const app = express();
const path = require('path');
const validator = require("email-validator");
const ip = require('ip');
const bcrypt = require('bcrypt');
const cryptoRandomString = require('crypto-random-string');
const nodemailer = require("nodemailer");

const test = require('./test');


app.get('/api/newuser',(req,res)=>{
    
    const {email} = req.query;
    
    

    test.doSomething({email, validator, ip, cryptoRandomString, nodemailer,res,transporter});
    
    
});

I plik test.js (moduł?)

exports.doSomething = function (needed) {
  
    const {email, validator, ip, cryptoRandomString, nodemailer,res,transporter} = needed;


 // create new user

}
    

Chodzi mi głównie o przekazywanie wszystkich modułów które używam (jako obiekty parametry) do mojego modułu, ponieważ on nie ma do nich dostępu ani do niczego z zewnątrz.

To jest okej dobre rozwiązanie czy jest jakieś bardziej optymalne?

1 odpowiedź

+1 głos
odpowiedź 15 lutego 2020 przez rafal.budzis Szeryf (85,260 p.)
wybrane 15 lutego 2020 przez mreo
 
Najlepsza

exporty i importy są ok :) Możesz też rozpraszać podczas importowania np :

const  { doSomething } = require('./test');

lub pokusić się o użycie nowej składni :)  (nie wiem czy nie będzie wymagany BABEL??)

import { doSomething } from './test'; 

Co do samej funkcji doSomething parametry możesz rozpraszać odrazu przy deklarowaniu:

exports.doSomething = function ({email, validator, ip, cryptoRandomString, nodemailer,res,transporter}) {
   
 
 // create new user
 
}

 

Podobne pytania

0 głosów
0 odpowiedzi 106 wizyt
0 głosów
1 odpowiedź 137 wizyt
pytanie zadane 11 kwietnia 2022 w JavaScript przez Maxxxii Obywatel (1,260 p.)
0 głosów
1 odpowiedź 336 wizyt
pytanie zadane 15 października 2018 w JavaScript przez Marchiew Dyskutant (7,690 p.)

92,572 zapytań

141,422 odpowiedzi

319,643 komentarzy

61,959 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...