2016-12-22 18 views
5

Tôi đang sử dụng trình tải gói webpack ts-loader để biên dịch các tệp nguồn typescript thành một gói javascript. Bây giờ tôi muốn các tệp javascript được biên dịch riêng lẻ cũng được lưu, cũng như gói! Tôi là familliar với việc viết một plugin webpack rất đơn giản, nhưng tôi không chắc chắn về cách thực hiện điều này. Đó là: Tôi không biết sự kiện nào được kích hoạt bởi webpack để nghe và nơi tìm thấy dữ liệu có liên quan. Bất kỳ giúp đỡ?để cho tệp webpack xuất các tệp được biên dịch riêng lẻ bên cạnh gói

+0

Bạn không thể sử dụng tệp webpack được biên dịch riêng lẻ. Nó có thể vỡ với 'Tham chiếu không bắt buộcError: __webpack_require__ không được định nghĩa' – Thaadikkaaran

+0

Nhưng tôi giả sử ts-loader biên dịch ts thành js với trình biên dịch kiểu đầu tiên trước khi webpack thay đổi bất cứ thứ gì trong mã như yêu cầu phải không? Tôi chỉ muốn những tập tin js riêng biệt – Flion

Trả lời

2

Như tôi đã nhận xét, bạn không thể sử dụng tệp webpack được biên dịch riêng lẻ. Nó có thể phá vỡ với Uncaught ReferenceError: __webpack_require__ is not defined.

Tốt hơn hãy viết loader của riêng bạn hoặc yêu cầu ts-loader để cung cấp tùy chọn giữ lại nguồn được chuyển đổi.

Hoặc tôi đã viết một loader để có thể lưu tệp được biên dịch dạng tệp dưới dạng tệp riêng lẻ.

bạn có thể sử dụng bộ nạp này nạp thứ hai hoặc sau bộ nạp như hình dưới đây

như một bộ nạp thứ hai:

module: { 
    loaders: [{ 
     test: /\.ts?$/, 
     loaders: ['scatter-loader', 'ts-loader'] 
    }] 
} 

hoặc như là một hậu loader

module: { 
    loaders: [{ 
     test: /\.ts?$/, 
     loaders: ['ts-loader'] 
    }], 
    postLoader: [{ 
     test: /\.ts?$/, 
     loaders: ['scatter-loader'] 
    }] 
} 

Lưu ý:scatter-loader công việc đang được tiến hành.

+0

Ah mát bạn thực sự đã viết một bộ nạp cho điều này, Sẽ kiểm tra này ra! – Flion

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