在组件中读取流时,我无法分配变量。
import { Component, OnInit } from '@angular/core';
var fs: any = require('fs');
@Component({
selector: 'stream-cmp',
templateUrl: 'app/view/stream.html',
styleUrls: ['./app/view/stream.css'],
})
export class StreamCmp {
private _anotherVariable:any = null;
private readstream:any = null;
private filePath:any = '/dir/file';
public fileUpload():void {
this.readstream = fs.createReadStream(this.filePath, {start: 140, end: 160});
this.readstream.on('data', function (text) {
console.log(text);
this.filePath = text;
});
}
基本上, this.filePath 从未分配过,我从未在视图中看到它。但是 console.log 总是有效的。
我是否使用某种更改检测(可能是 changedetectionref,因为它应该比 NgZone 快)?既然它是一个流,我们会立即获得所有这些吗?它是异步流吗?我应该调用 fs 模块上的属性来将数据写入变量吗?似乎 fs 模块上的管道功能旨在写入文件或其他流。