Có cách nào để nhập khẩu hoặc chú thích module nguyên cảo mà module AMD bên ngoài sẽ tự động được bao gồm như là phụ thuộc khi tạo một module AMD tương thích ?:Tự động bao gồm AMD deps trong mô-đun Typecript AMD?
tsc --module AMD example.ts
Tôi đã cố gắng để bao gồm cả bao gồm một tham chiếu * tập tin .d.ts, và xuất khẩu kê khai báo cáo:
///<reference path='./lib/knockout-2.2.d.ts' />
export declare var $;
export declare var _;
export module example {
export class Example {
// whatever
}
}
Tuy nhiên các mô-đun tạo không bao gồm những:
define(["require", "exports"], function(require, exports) {
(function (example) {
var Example = (function() {
function Example() { }
return Example;
})();
example.Example = Example;
})(exports.example || (exports.example = {}));
var example = exports.example;
})
Thực sự muốn tránh tạo các mô-đun "giả" ở đây.
Nó có vẻ như một giải pháp và sử dụng thoải mái sẽ cho phép nhập khẩu các module AMD trực tiếp:
var $ = import('jquery'); // This is a requirejs/AMD module, not a typescript file.
nhưng tôi không biết làm thế nào khả thi đó là.
Edit:
Và tôi cũng đã thử phương pháp này đề cập ở đây: Import TypeScript module using only ambient definition for use in amd
import knockout = module("./lib/knockout-2.2.d.ts");
...
nhưng nhận được các lỗi biên dịch:
example.ts(1,32): The name '"./lib/knockout-2.2.d.ts"' does not exist in the current scope
example.ts(1,32): A module cannot be aliased to a non-module type
Bạn đã tìm thấy một giải pháp tốt cho việc này? –
Không - trong trường hợp của tôi, tôi bắt đầu nhận ra nó dễ dàng hơn để concat ứng dụng Typecript của tôi vào một tệp đơn ('tsc - out') thay vì lo lắng về AMD, vì không tải bất cứ thứ gì. – 7zark7
Tôi chỉ tìm thấy /// - nhưng trước tiên có thể kiểm tra nó khi tôi về nhà. –