ahe*_*rve 8 javascript typescript typescript-typings typescript2.0
我想要 :
./myClass/index.jsMyClass某处的公共方法(在index.ts或指定的声明文件中,我真的不知道怎么做)index.ts就像是
// index.ts
import MyClass from './myClass' // or require, or anything that would work
export {MyClass}
Run Code Online (Sandbox Code Playgroud)
和
// myClass/index.js
export default class MyClass {
...
}
Run Code Online (Sandbox Code Playgroud)
这显然不起作用,因为导入./myClass/index将找不到模块.
问题是,我试图./myClass/index.d.ts基于这个例子创建一个文件,但无论如何,我仍然有一个错误:在运行时找不到模块'./myClass/index.js'错误:(
我觉得我在这里错过了一些打字稿基础,但我正在努力寻找一些明确的资源.
有任何想法吗 ?
goe*_*ing 11
export default classJavaScript中没有.你能做的就是像这样写你的JS文件.myClass/index.js
"use strict";
class MyClass {
hello(name) {
console.log(`Hello ${name}`);
}
}
exports.default = MyClass;
Run Code Online (Sandbox Code Playgroud)
为它创建一个类型定义. myClass/index.d.ts
export default class MyClass {
hello(name: string): void;
}
Run Code Online (Sandbox Code Playgroud)
然后,您可以像这样将它导入TypeScript.
/// <reference path="./myClass/index.d.ts" />
import MyClass from "./myClass";
const my = new MyClass();
my.hello("Stack Overflow");
Run Code Online (Sandbox Code Playgroud)
小智 5
在你的 javascript 文件的末尾,写下这个
exports.MyClass = MyClass;
Run Code Online (Sandbox Code Playgroud)
在 ts 文件中
import * as IzendaSynergy from './izenda/izenda_ui.js';
Run Code Online (Sandbox Code Playgroud)
或者
import { IzendaSynergy } from './izenda/izenda_ui.js';
Run Code Online (Sandbox Code Playgroud)
在 tsconfig.json 文件中
"allowJs": true
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16503 次 |
| 最近记录: |