Nodejs Module
NodeJs module sử dụng hàm require()
và module.exports
. Sử dụng cách này khác biệt với cách sử dụng của ES module đã giới thiệu ở bài trước. Cách sử dụng như sau:
|
|
Chúng ta cũng có thể sử dụng exports
vì nó sẽ link tới module.exports
.
|
|
Giải thích về module trong NodeJs
Hàm require
trong NodeJs để load các module khác. Đầu vào của hàm này có thể là file.js
hoặc file.json
hoặc thư mục. Ngoài ra thì có thể require thư viện hệ thống của NodeJs như require('http')
.
Tham số trong require thì có thể là đường dẫn đến file (bắt đầu bằng ./
, ../
và /
) hoặc NodeJs sẽ tìm trong thư mục node_modules
của dự án.
Ngoài ra còn có thể cài đặt giá trị NODE_PATH
là danh sách các thư mục mà NodeJs có thể require.
Tiếp theo là các module được cache, có nghĩa là chúng chỉ load module foo ở lần đầu khi gọi require('foo')
. Các lần sau không phải load lại.
Trong mã nguồn của NodeJs các module được bao trong một hàm như sau:
|
|
Làm như vậy để:
- Các khai báo biến
var
,let
,const
, hàm, class được bao đóng và không được pulic ra ngoài. - Cung cấp các bên ngoài gồm có
export
,require
để truy xuất vào module
Cuối cùng nếu chúng ta sử dụng return
ở giữa module thì các code ở sau sẽ không chạy nữa. Nên thường chúng ta không sử dụng return
như vậy.
|
|