Node.js ialah persekitaran masa jalan JavaScript bahagian pelayan yang sangat popular, yang boleh menjalankan kod JavaScript terus di bahagian pelayan kami. Dalam Node.js, modul ialah teknologi yang digunakan untuk menyusun dan merangkum kod.
Kaedah eksport membolehkan kami mendedahkan bahagian yang kami inginkan daripada satu modul untuk digunakan oleh modul lain. Dalam Node.js, kaedah eksport dalam modul biasanya mempunyai kaedah berikut.
1. modul.eksport
Kaedah eksport yang paling biasa digunakan ialah modul.eksport. Dengan menetapkan module.exports kepada fungsi, objek, kelas, pemalar, dll., kita boleh menggunakannya dalam modul lain.
Sebagai contoh, kami mempunyai modul yang dipanggil "sum.js" yang mentakrifkan fungsi yang menambah dua nombor:
function add(a, b) { return a + b; } module.exports = add;
Dalam modul lain, kami boleh Memuatkan dan menggunakan fungsi yang ditakrifkan dalam modul ini melalui kaedah yang diperlukan:
const sum = require('./sum.js'); console.log(sum(1, 2)); // 输出 3
Kami juga boleh mengeksport sebarang bilangan fungsi, objek, kelas, pemalar, dll. dalam modul melalui modul.eksport:
function add(a, b) { return a + b; } function subtract(a, b) { return a - b; } const PI = 3.14; module.exports = { add: add, subtract: subtract, PI: PI };
Dalam modul lain, kami boleh memuatkan dan menggunakan kandungan yang dieksport dalam modul di atas dengan cara berikut:
const { add, subtract, PI } = require('./math.js'); console.log(add(1, 2)); // 输出 3 console.log(subtract(5, 3)); // 输出 2 console.log(PI); // 输出 3.14
2 eksport
Kaedah eksport lain ialah objek eksport. Dalam sistem modul Node.js, module.exports dan exports sebenarnya adalah dua alias untuk objek yang sama. Oleh itu, kita boleh mengeksport kandungan dalam modul dengan mengubah suai objek eksport.
Sebagai contoh, kami mengubah suai modul "sum.js" untuk mengeksport fungsi tambah melalui eksport:
exports.add = function(a, b) { return a + b; }
Dalam modul lain, kami boleh memuatkan dan menggunakan modul ini dengan cara berikut Kandungan:
const sum = require('./sum.js'); console.log(sum.add(1, 2)); // 输出 3
eksport juga boleh digunakan untuk mengeksport objek, contohnya:
exports.person = { name: '张三', age: 20 };
Dalam modul lain, kami boleh memuatkan dan menggunakan objek yang dieksport dalam modul ini dalam perkara berikut cara:
const person = require('./person.js'); console.log(person.name); // 输出 张三 console.log(person.age); // 输出 20
Perlu diambil perhatian bahawa apabila kita menggunakan kedua-dua objek eksport dan modul.eksport dalam modul, objek eksport akan diabaikan.
3. memerlukan
Selain mengeksport kandungan, kami juga boleh memperkenalkan kandungan daripada modul lain ke dalam modul. Dalam Node.js, kita boleh menggunakan kaedah memerlukan untuk memperkenalkan modul lain.
Sebagai contoh, kami mempunyai modul yang dipanggil "calculator.js" yang bergantung pada modul "sum.js":
const sum = require('./sum.js'); function multiply(a, b) { let result = 0; for (let i = 0; i < b; i++) { result = sum.add(result, a); } return result; } module.exports = { multiply: multiply };
Dalam modul lain, kita boleh melakukan seperti berikut Muat dan gunakan fungsi yang dieksport dalam modul di atas:
const calculator = require('./calculator.js'); console.log(calculator.multiply(5, 3)); // 输出 15
Perlu diingatkan bahawa apabila kami memperkenalkan modul lain dalam modul, kami boleh terus menggunakan kandungan yang dieksport dalam modul yang diimport tanpa Gunakan nama modul untuk mengakses .
Ringkasan
Di atas ialah kaedah dalam modul eksport dalam Node.js. Walaupun asasnya dibincangkan di sini, kerumitan sistem modul Node.js melampaui itu. Dalam aplikasi praktikal, kami juga perlu mempunyai pemahaman yang mendalam tentang mekanisme pemuatan modul Node.js, strategi pengoptimuman dan butiran lain. Saya harap anda boleh mendapat inspirasi daripada artikel ini dan mempunyai pemahaman yang lebih mendalam serta aplikasi kaedah eksport modul Node.js.
Atas ialah kandungan terperinci Mari bercakap tentang kaedah eksport modul nodejs. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!