我正在使用 Vite 和 vanilla-ts 创建一个项目,有一次我必须使用包readdir中的方法fs-extra,但它创建了一个错误process is not defined,有人建议我将此代码放在我的vite-config.ts文件中:
import { defineConfig } from 'vite'
export default defineConfig({
define: {
'process.env': {}
}
})
Run Code Online (Sandbox Code Playgroud)
这修复了最初的错误,但创建了一个新的错误global is not defined,其中包含更多研究并添加'global': {}了define,就像之前修复了错误但创建了另一个错误一样Cannot read properties of undefined (reading 'substr')
使用的代码:
import { readdirSync } from 'fs-extra';
const folders = readdirSync('./', { withFileTypes: true })
.filter(dir => dir.isDirectory);
Run Code Online (Sandbox Code Playgroud)
投票版本:^2.9.5
FS-Extra版本:^9.0.13
我正在尝试使用fs-extra模块将图像从文件夹复制到另一个文件夹.
var fse = require('fs-extra');
function copyimage() {
fse.copy('mainisp.jpg', './test', function (err) {
if (err)
return console.error(err)
});
}
Run Code Online (Sandbox Code Playgroud)
这是我的目录

这是我一直得到的错误:
错误{errno:-4058,代码:"ENOENT",系统调用:"lstat",路径:"E:\ mainisp.jpg",消息:"ENOENT:没有这样的文件或目录,lstat'E:\ mainisp.jpg' "}

并通过更改目的地./test/我得到此错误
错误{errno:-4058,代码:"ENOENT",系统调用:"lstat",路径:"E:\ Development\Node apps\Node softwares\Digital_library\mainisp.jpg",消息:"ENOENT:没有这样的文件或目录,lstat'E:\ Devel ... apps\Node softwares\Digital_library\mainisp.jpg'"}
注意:我没有在浏览器中测试它.它是一个Nwjs应用程序,附带的错误图片来自Nwjs控制台.
我正在尝试使用fs-extra npm 模块中的move方法。它适用于移动文件和空目录,但每次我尝试在使用nodemon 时移动非空目录时,都会收到此错误:
[Error: EACCES: permission denied, rename 'path/to/src/dir' -> 'path/to/dest/dir'] {
errno: -13,
code: 'EACCES',
syscall: 'rename',
path: 'path/to/src/dir',
dest: 'path/to/dest/dir'
}
Run Code Online (Sandbox Code Playgroud)
但是,如果我尝试使用完全相同的方法与良好的老式 node index.js,它会产生效果。为什么 nodemon 没有足够的权限,我该如何解决?
由于@Aw Snap 的评论,我在 Mac OS 上尝试了它,它似乎与 nodemon 一起工作。
我想知道这是否是适用于 Linux 的 Windows 子系统的问题...
我可以删除 apples 目录中的所有文件而不删除目录本身吗?fs-extra API没有描述是否可能。
fsExtra.remove 'apples/*', ->
if !err
# Do stuff
Run Code Online (Sandbox Code Playgroud) 在我的angular 2应用程序中,需要使用文件系统将大文件上传到Amazon S3服务器.但是,我在应用程序中导入文件系统时遇到问题.请帮助我的应用程序中实现文件系统.
我的component.ts文件
import { Component,ViewChild } from '@angular/core';
import * as fs from 'fs';
/* External Services */
import { ApiWebConfig } from '../../../core/config/app.config';
declare var $:any;
@Component({
selector: 'content-uploadpart',
templateUrl: './app/modules/uploadpartcontent.html'
})
export class ContentUploadPartComponent {
constructor( private config:ApiWebConfig ) { }
uploadToAWS(file:any) {
var buffer = fs.readFile()
console.log('buffer',buffer);
}
ngOnInit() { }
}
Run Code Online (Sandbox Code Playgroud)
还有我的uploadpartcontent.html
<div class="container">
<div class="row">
<div class="col-md-12 upload_part_wrap">
<input #fileUpload (change)="uploadToAWS($event)" type="file" value="Browse" />
</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
我的Package.json文件
{
"name": "my-project",
"version": "1.0.0", …Run Code Online (Sandbox Code Playgroud) 当我create-react-app在 CLI 中运行时,我收到以下错误消息:
$ create-react-app udacity-goals-todo
internal/modules/cjs/loader.js:573
throw err;
^
Error: Cannot find module 'fs-extra'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:571:15)
at Function.Module._load (internal/modules/cjs/loader.js:497:25)
at Module.require (internal/modules/cjs/loader.js:626:17)
at require (internal/modules/cjs/helpers.js:20:18)
at Object.<anonymous> (/usr/local/lib/node_modules/create-react-app/createReactApp.js:40:12)
at Module._compile (internal/modules/cjs/loader.js:678:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:689:10)
at Module.load (internal/modules/cjs/loader.js:589:32)
at tryModuleLoad (internal/modules/cjs/loader.js:528:12)
at Function.Module._load (internal/modules/cjs/loader.js:520:3)
Run Code Online (Sandbox Code Playgroud)
我试过卸载和重新安装create-react-app以及重新安装fs-extra.
关于如何重新启动和运行的任何想法?
仅当目标文件不存在时,我才尝试在 Node.js 中异步重命名文件。
我做了一个快速测试,如下所示:
const fs = require('fs')
const files = [ 'file1', 'file2', 'file3' ]
const new_name = 'new-name' // same destination name for all
Run Code Online (Sandbox Code Playgroud)
fs.exists() - 已弃用
for (let file of files)
fs.exists(new_name, (exists) => {
if (!exists) fs.rename(file, new_name, (err) => {})
})
Run Code Online (Sandbox Code Playgroud)
fs.access() - 推荐
for (let file of files)
fs.access(new_name, fs.constants.F_OK, (err) => {
if (err) fs.rename(file, new_name, (err) => {})
})
Run Code Online (Sandbox Code Playgroud)
const fs_extra = require('fs-extra')
for (let file of …Run Code Online (Sandbox Code Playgroud) fs-extra ×7
node.js ×4
fs ×3
javascript ×2
angular ×1
asynchronous ×1
aws-sdk ×1
filesystems ×1
nodemon ×1
nwjs ×1
sudo ×1
typescript ×1
vite ×1