我在Vue项目中成功使用了csv-parse。 代码如下:
import * as csvParse from 'csv-parse';
const parse = require('csv-parse')
const parseOptions: csvParse.Options = {
//options here...
};
var parser: csvParse.Parser = csvParse(parseOptions, function(data, err) {
console.log(data);
}) as csvParse.Parser;
const parseCallback:csvParse.Callback = (err: Error|undefined, records: any, info: csvParse.Info) =>
{
//code to run after parse...
};
parse(csvText, parseOptions, parseCallback);
我们切换到Angular 8,并且相同的代码开始引发此错误:
index.js:43 Uncaught ReferenceError: global is not defined
at Object../node_modules/buffer/index.js (index.js:43)
at __webpack_require__ (bootstrap:79)
at Object../node_modules/safe-buffer/index.js (index.js:2)
at __webpack_require__ (bootstrap:79)
at Object../node_modules/readable-stream/lib/_stream_readable.js (_stream_readable.js:55)
at __webpack_require__ (bootstrap:79)
at Object../node_modules/readable-stream/readable-browser.js (readable-browser.js:1)
at __webpack_require__ (bootstrap:79)
at Object../node_modules/stream-browserify/index.js (index.js:28)
at __webpack_require__ (bootstrap:79)
我添加了
declare function require(path: string): any;
处理打字稿中的要求。 我也尝试删除要求。我收到同样的错误。
我该如何解决?谢谢。
答案 0 :(得分:0)
在安装ID DateIN ID DateOut
01 2019-09-20 09:28 07 2019-09-20 19:01
08 2019-09-20 20:28 11 2019-09-20 20:55
之后,您可以更改csv-parse
并添加以下代码行:
polyfills.ts
然后在您的(window as any)['global'] = window;
中,尝试导入app.module.ts
模块:
CSV
这里是相关的SO post。
编辑
关于遇到的错误,请尝试将其添加到polyfills.ts中:
@NgModule({
declarations: [
...
],
imports: [
...
CSVModule.forRoot(),
...
],
exports: [
...
],
providers: [
... ],
bootstrap: [AppComponent]
})
这应该可以解决您的问题。