Khi bạn cần nhập nội dung nào đó không xuất được gì, nhưng thực hiện điều gì đó khác, đây chỉ là mô-đun phụ có hiệu lực phụ. Bạn chỉ nhập nó để khởi tạo nó.
tinh khiết và không Modules tinh khiết
Nếu bạn nghĩ về mô-đun như chức năng, một mô-đun mà chỉ ảnh hưởng phạm vi bằng cách xuất nội dung của nó cũng giống như một hàm luôn trả về điều tương tự (một chức năng tinh khiết không có tham số). Không có vấn đề bao nhiêu lần bạn sẽ nhập khẩu phản ứng 15.01, bạn sẽ luôn luôn nhận được một đối tượng có chứa các phương pháp tương tự.
Mô-đun có tác dụng phụ là một thay đổi phạm vi theo những cách khác rồi trả về một cái gì đó, và hiệu ứng của nó không phải lúc nào cũng có thể dự đoán được, và có thể bị ảnh hưởng bởi lực bên ngoài (chức năng không thuần túy). Ví dụ, một polyfill, có thể không làm bất cứ điều gì, bởi vì nó thấy rằng tính năng mà nó cho phép đã được trình duyệt hỗ trợ.
Ví dụ về các tác dụng phụ:
- với phím tắt kiễu góc tới đối tượng
window
toàn cầu, nhưng không xuất khẩu bất cứ điều gì.
- Một vùng chèn cho phép các tính năng ES6 trong các trình duyệt không hỗ trợ chúng, như babel polyfill là một tác dụng phụ.
- Nhiều plugin jQuery tự đính kèm với đối tượng jQuery toàn cầu.
- Mô-đun Analytics chạy trong nền, theo dõi tương tác của người dùng và gửi dữ liệu đến máy chủ.
- Nhập CSS trong webpack có thể được coi là tác dụng phụ nếu bạn không sử dụng các mô-đun CSS.
Nguồn
2016-12-13 17:53:33