我正在尝试使用fs从Angular项目(节点版本v10.15.3,带有Angular 7)中读取文本文件。
我使用以下命令安装了fs库:
npm install --save fs
function readFile(){
const fs = require('fs');
var text = fs.readFile("src/assets/js/utile/groovy.txt", "utf8", (err, data) => {
if (err) { console.log(err) }
console.log(data);
})
这是我的错误消息:Uncaught TypeError: fs.readFile is not a function
答案 0 :(得分:1)
扩展注释,因为它用于服务器端nodejs,因此无法在浏览器中使用fs
。
一种替代方法是使用HTTP请求来检索您的文本文档。这样的好处是能够在另一个位置(例如github或另一个文件托管服务)托管此文本文档。
将文本文件放置在/ assets文件夹中
确保在您的app.module.ts文件中导入了HttpClientModule
使用
public constructor(
private http: HTTPClient,
) {}
this.http.get('/assets/groovy.txt')
.subscribe((data) => {
console.log(data);
},
(err: HttpErrorResponse) => {
if (err.error instanceof Error) {
// A client-side or network error occurred. Handle it accordingly.
console.log('An error occurred:', err.error.message);
} else {
// The backend returned an unsuccessful response code.
// The response body may contain clues as to what went wrong,
console.log(`Backend returned code ${err.status}, body was: ${err.error}`);
}
}
);