2016-01-27 11 views
6

Tôi nghe nói rằng xuất/nhập động không được phép trong es6.Điều gì đủ tiêu chuẩn làm xuất khẩu động trong ES6

This website Sử dụng ví dụ export default 5 * 7; như thể đó là một xuất khẩu hợp pháp, tĩnh. Điều này có vẻ hợp lý vì nó đánh giá rõ ràng giá trị tĩnh của 35, nhưng tôi tự hỏi chính xác những gì đủ điều kiện như là một xuất khẩu tĩnh ngay bây giờ.

This Code sử dụng export default Backbone.Router.extend({...}); như thể đó là hợp pháp, tĩnh, xuất. Điều này có vẻ giống cá đối với tôi vì nó có vẻ giống như một xuất khẩu động cho tôi (xuất kết quả của một cuộc gọi hàm).

Trả lời

5

Ví dụ thứ hai chỉ xuất kết quả của lệnh gọi hàm tĩnh. Hàm này chỉ được gọi một lần, do đó kết quả sẽ luôn giống nhau trên mọi lần nhập.

Một ví dụ để minh họa:

f.js

function f() { 
    return 2 * Math.random(); 
} 

export default f(); // Is called, before the export is defined. Result: 1.23543 

i1.js

import f from 'f'; 

console.log(f); // 1.23543 

i2.js

import f from 'f'; 

console.log(f); // 1.23543 as well 
6

Tất cả xuất khẩu là tĩnh trong ES6, có nghĩa là tên được xuất của họ sẽ được giải quyết actly một biến ràng buộc trong mô-đun xuất khẩu và điều này có thể được xác định bởi một cái nhìn duy nhất trước khi đánh giá mã mô-đun.

Mô-đun không thể tự động thêm hoặc xóa xuất thông qua việc thực thi mã, danh sách tên đã xuất được cố định bởi khai báo.

Biến này có giữ một hằng số hoặc kết quả của một cuộc gọi hàm không quan trọng, cho dù nó giữ giá trị nguyên thủy hay một đối tượng. Nó thậm chí không cần phải là một hằng số, nội dung của biến có thể thay đổi theo thời gian (xem ví dụ here).


Tất cả các hàng nhập khẩu từ import báo cáo là tĩnh là tốt, có nghĩa là bạn có thể khám phá các đồ thị phụ thuộc mà không thực hiện bất kỳ mã module.

A động nhập được thực hiện bằng một lệnh gọi rõ ràng đến trình tải mô-đun. Các tải trọng như vậy có thể phụ thuộc vào luồng điều khiển của mô-đun và có thể khác nhau khi chạy. Mã cần phải xử lý thủ công sự không đồng bộ của quá trình và các lỗi tiềm ẩn.

Các vấn đề liên quan