node.js - node.js require("fs") 给出空对象
问题描述
在我的 Ionic 项目中,当我运行一个简单的测试代码时require('fs')
:
const fs = require('fs');
console.log(fs) //empty object {}
if(!fs.existsSync('./testFolder')){
console.log('Folder not found');
}
else{
console.log('Folder Found');
}
错误是
TypeError:fs.existsSync 不是函数
但是如果我创建一个 js 文件并在 cmd 上运行它node test-fs
,我可以注销 fs 对象并获得结果。
任何原因?
编辑:
我希望最终实现这一目标:
var request = require('request');
var fs = require('fs');
var options = {
url: 'https://some-url/api',
headers: {
"content-type": "application/json",
},
agentOptions: {
pfx: fs.readFileSync(__dirname + '/certs/myCert.p12'),
passphrase: ''
}
};
request.get(options, (error, response, body) => {
console.log(error);
console.log(response);
console.log(body);
});
解决方案
文件系统模块是服务器端节点模块,它不会在应用程序内部运行,它是客户端代码。代替 Ionic 应用程序使用本机文件插件
import { File } from '@ionic-native/file/ngx';
constructor(private file: File) { }
推荐阅读
- android-activity - How to grant permission in Application class Xamarin.Android?
- r - 如何以正确的格式获取时间字符串?
- python - XlsxWriter 在添加行时的用法
- python - 在 Windows 上的任何地方运行 Python 脚本
- python - 与 knn 的 y 轴上的样本不匹配
- python - 与未创建 Django 的用户对象相关
- sql-server - 修改 RDS 更改 Microsoft SQL Server 许可证类型
- php - Trying to access array offset on value of type null when using RefreshDatabase in Laravel
- mongodb - MongoDB - Can I use @TextIndexed and @Indexed on a field at the same time?
- css - 应用程序中的 Angular cssSyntaxError