Cập nhật mùa hè 2017:
Xem http://caniuse.com/#search=modules, hỗ trợ mới, có lẽ cần phải thay đổi cài đặt.
Bây giờ mọi thứ ít mơ hồ hơn. Để thực hiện công việc mô-đun, bạn phải cho trình duyệt biết rằng đó là mô-đun (tập lệnh khác). Cách đầu tiên là ngầm định, một mô-đun được nhập luôn là một mô-đun. Cách thứ hai là với kiểu mô-đun <script src="anymodule.js" type="module"></script>
Hãy chắc chắn rằng nhập khẩu và xuất khẩu chỉ ở trên mức, không phải bên trong một khối, không phải bên trong một câu lệnh if, không phải bên trong một vòng lặp vv
Ngoài ra hãy chắc chắn đến cung cấp đường dẫn đầy đủ (bao gồm .js), nó phải bắt đầu bằng ./
hoặc ../
. Giả sử các tệp nằm trong cùng một thư mục, nó sẽ là import { cube, cubeRoot } from './functions.js';
eval
trên chuỗi mô-đun sẽ không hoạt động.
câu trả lời lỗi thời dưới đây:
Module ES2015 nhập khẩu và xuất khẩu cú pháp không được hỗ trợ bởi bất kỳ trình duyệt tại thời điểm tôi viết câu trả lời này (04/2016). Các thông báo lỗi là bỏ lỡ hàng đầu bởi vì nó ngụ ý rằng cú pháp được hỗ trợ, nhưng nó không được hỗ trợ ở tất cả. Xem ghi chú đầu tiên ở đây https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/import
Lý do là do đặc điểm kỹ thuật cho trình tải mô-đun vẫn đang trong quá trình thực hiện. Xem https://whatwg.github.io/loader/#status
Tuy nhiên, chúng là các công cụ để chèn hoặc tự động chuyển cú pháp cú pháp này như babel.
Nguồn
2016-04-05 16:39:54
Có phải 'chức năng' là tệp hay mô-đun không? Có lẽ bạn cần 'import {...} từ './Functions''? –
Bạn có chắc chắn rằng bạn không có một số dấu ngoặc mở chưa từng có chưa? Đây có phải là mã chính xác của bạn không? Bạn có thể chỉ cho chúng tôi thiết lập chính xác và cách bạn đang quảng cáo điều này không? – Bergi
Đây có phải là toàn bộ thông báo lỗi không? Có bất kỳ số dòng hoặc như vậy? – Bergi