Tôi đang viết một "lớp học" trong nútLàm cách nào để thực hiện xuất khẩu tương thích với ES5 và ES6?
// mymodule/index.js
function MyClass() {}
MyClass.prototype.method1 = function() {..}
thường tôi làm
module.exports = MyClass
nhưng tôi muốn lớp học của tôi có sẵn cho cả cú pháp
var MyClass = require('mymodule')
và
import {MyClass} from 'mymodule'
Đó là cách chính xác để làm điều đó?
Hãy xem cách Babel tiếp cận điều này: http://babeljs.io/docs/usage/modules/# interop – Wildhoney
Tại sao bạn muốn 'nhập {MyClass} từ 'mymodule'' thay vì' nhập MyClass từ' mymodule''? 'var MyClass = require ('mymodule')' tương đương với 'nhập MyClass từ 'mymodule'' và' import {MyClass} từ' mymodule'' tương đương với 'var MyClass = require ('mymodule'). MyClass'. Trong khi bạn chắc chắn có thể đạt được những gì bạn muốn, câu hỏi là liệu nó có ý nghĩa hay không. –
Bạn có thể có nghĩa là làm thế nào để thực hiện một xuất khẩu mà là cả hai tương thích với CommonJS và ES6 của Harmony. –