Javascript Typescript模块和systemjs。从内联脚本实例化类

Javascript Typescript模块和systemjs。从内联脚本实例化类,javascript,typescript,systemjs,Javascript,Typescript,Systemjs,我正在使用系统模块选项将typescript模块转换为javascript。我正在浏览器中执行此操作 当初始化typescript生成的模块类的代码也使用systemjs system.import加载时,我可以使用这个模块 如何使作为模块一部分的类从未通过systemjs加载的javascript代码中可用?例如,在页面中嵌入javascript?您可以使用SystemJS以javascript导入模块 假设您有一个名为app.ts的模块,该模块导出一个名为value的变量 app.ts: e

我正在使用系统模块选项将typescript模块转换为javascript。我正在浏览器中执行此操作

当初始化typescript生成的模块类的代码也使用systemjs system.import加载时,我可以使用这个模块


如何使作为模块一部分的类从未通过systemjs加载的javascript代码中可用?例如,在页面中嵌入javascript?

您可以使用SystemJS以javascript导入模块

假设您有一个名为app.ts的模块,该模块导出一个名为value的变量

app.ts:

export let value = 'ABCASF';
在脚本标记中,您可以编写:

System.import('app.js')。然后(函数(appModule){
console.log(appModule.value);
},console.error.bind(console));
请记住,您必须为系统指定的模块名称。导入可能会根据您的设置而有所不同

TypeScript类被传输到ES5函数,因此您可以通过这种方式在javascript中使用它们

示例2.ts:

导出类示例{
构造函数(公共someValue:string,私有someOtherValue:number){
}
公共方法(){
返回this.someOtherValue;
}
}
在脚本标记中,请执行以下操作:

System.import('example.js')。然后(函数(示例){
//示例类是模块上的一个函数
//使用new创建新实例
var值=新示例。示例('a',5);
//照常工作
console.log(value.method());
},console.error.bind(console));

我可能没有说清楚。我正在用systemjs加载模块。我想从页面内联javascript中使用该模块中的类。@user3591122 hah。。那么我的第一个答案应该是正确的!我误解了。@user3591122我又编辑了答案,这对你有用吗?:)如果不是的话,我可以在你具体导出一个类的地方给出一个答案。很好,这很有效,我对你的答案投了更高的票,虽然直到我的代表15岁才显示出来