gpt4 book ai didi

javascript - 无法从另一个 .ts 文件访问 .ts 文件中定义的函数定义

转载 作者:行者123 更新时间:2023-11-28 04:47:41 30 4
gpt4 key购买 nike

如果您愿意花 2 美分来解决调用另一个文件中定义的函数的问题,我将不胜感激。我阅读了 Typescript 的文档,其中建议设置一个接口(interface)或一个模块,然后引用它,但我收到了与下面相同的错误。

错误

ReferenceError: viewReport is not defined

文件结构

sample
- sample.component.ts
- sample.component.html
- sample.component.css
pdf
viewReport.ts

sample.component.ts

import './pdf/viewReport';

declare var pdfMake: any;
declare var viewReport: any;

export class SampleComponent {

addr = {
"streetaddress": '',
"cityName": '',
"stateCode": '',
"zipCode": ''
};

constructor() {}

data = {
header: {
"address": {
"street": this.addr.streetAddress,
"city": this.addr.cityName,
"state": this.addr.stateCode,
"zip": this.addr.zipCode
}
}

}

downloadPdf(){
let pdf = pdfMake;
pdf.createPdf(viewReport(this.data)).download('test.pdf');
}
}

viewReport.ts

function viewReport( data ) {
let docDefinition = {
content: [{
text: 'Address: ' + data.header.address.street
}]
}
console.log( 'data:: ', data );
return docDefinition;
}

最佳答案

我能够通过对代码进行以下更改来解决该问题:

viewReport.ts

导出时添加关键字“默认

export default function viewReport( data ) {

sample.component.ts

替换

import './pdf/viewReport';
declare var viewReport: any;

import viewReport from './pdf/viewReport';

引用文献

@n00dl3
@vesse
https://www.typescriptlang.org/docs/handbook/modules.html

关于javascript - 无法从另一个 .ts 文件访问 .ts 文件中定义的函数定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43212311/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com