Csv Reader手稿

时间:2016-03-14 11:39:12

标签: html angular typescript

我正在尝试为我们的项目构建一个简单的csv阅读器。首先,我在JS中建立了一个并且工作正常,但我很难将其转换为ts。

这是简单的HTML代码:

editans

这是在其上运行的打字稿:

<div id="dvImportSegments" class="fileupload">
    <fieldset>
        <legend>Upload your CSV File</legend>
        <input type="file" name="File Upload" id="txtFileUpload" (change)="changeListener($event)" accept=".csv"/>
    </fieldset>
</div>

但我有一些错误,import {Component, ViewEncapsulation} from 'angular2/core'; import {Router} from 'angular2/router'; import {ContentService} from "../service/contentService"; import {RouteParams} from "angular2/router"; @Component({ selector: 'createCsv', templateUrl: 'app/partials_html/createCsv.component.html', encapsulation: ViewEncapsulation.None }) export class CreateCsvComponent { changeListener($event):void { this.upload($event.target); } upload(inputValue:any):void { var data = null; var file:File = inputValue.files[0]; var reader:FileReader = new FileReader(); //reader.readAsText(file); reader.onloadend = function (e) { var csvData = reader.result; data = $.csv.toArrays(csvData); //??? if (data && data.length > 0) { alert('Imported -' + data.length + '- rows successfully!'); } else { alert('No data to import!'); } }; reader.onerror = function () { alert('Unable to read ' + file); }; } //} } 他在那里找不到$符号,我该如何解决?

提前致谢

1 个答案:

答案 0 :(得分:2)

  

他找不到那里的$符号

您可能正在使用https://github.com/evanplaice/jquery-csv

您需要一个不属于您的代码库的 JavaScript库的TypeScript声明文件。一个简单的vendor.d.ts

declare var $:any;

此外,您还需要查看模块加载程序,以确保在运行代码之前加载了所需的库。

更多

有关声明文件和迁移的一些文档:https://basarat.gitbooks.io/typescript/content/docs/types/migrating.html