Tôi có một mô-đun NPM gọi RiveScript thường (trong Javascript) được khởi tạo theo cách đó:Viết một tập tin tuyên bố cho một module xuất khẩu mặc định
var RiveScript = require('rivescript');
var rivescript = new RiveScript();
Tôi đang cố gắng để viết một tập tin khai cho các mô-đun, nhưng bị kẹt ở bước đầu tiên. Dưới đây là những gì tôi đã viết cho đến nay:
declare module "rivescript" {
interface RivescriptOptions {
utf8?: boolean;
}
class RiveScript {
constructor(options?: RivescriptOptions);
}
export default RiveScript;
}
Sau đó, tôi đoán trong nguyên cảo tôi sẽ sử dụng các module theo cách này (mặc định nhập khẩu):
import RiveScript from 'rivescript';
let rivescript = new RiveScript();
Tuy nhiên, tsc
tạo này, mà không hợp lệ vì hàm này tham chiếu đến hàm default()
:
const rivescript_1 = require('rivescript');
let rivescript = new rivescript_1.default();
Tôi đang làm gì sai?
Nó hoạt động, cảm ơn! Tôi chỉ bối rối bởi thực tế là cú pháp 'import RiveScript = require ('rivescript');' cú pháp không giống như một câu lệnh import ES6 hợp lệ? –
Theo như tôi hiểu, 'nhập Rivescript từ 'rivescript'' sẽ nhập xuất mặc định của Rivescript. Tuy nhiên, không có xuất mặc định: https://github.com/aichaos/rivescript-js/blob/master/src/rivescript.coffee#L963. Để có cái nhìn tổng quan đầy đủ: https://github.com/Microsoft/TypeScript/issues/2242 –
Ok hiểu rồi, cảm ơn! –