使用Electron & React从目录中读取文件名并输出到JSON的方法

lqfhib0f  于 2023-01-15  发布在  Electron
关注(0)|答案(1)|浏览(238)

我试图使一个音乐播放器应用程序与电子和React。我已经能够访问音乐文件的资源/音乐文件夹时,建立和安装,但我必须给确切的路径到一个mp3。
我一直在尝试扫描目录并将所有音乐文件名放在JSON中的方法,因为这个想法是用户可以将自己的音乐文件添加到音乐文件夹中,由应用程序拾取并显示在列表中。
我看到的大多数解决方案都使用node fs,但我就是无法让它工作。我一直收到这个错误:
类型错误:fs. readdir不是函数
任何帮助都将不胜感激。

import React, { Component } from 'react';
import { Link } from "react-router-dom"
import Testpage from "./Test";
import song from '../Music/Taxi.mp3'
import FileSearch from "../filesearch";

const fileSearch = new FileSearch();

const dataPath =
    process.env.NODE_ENV === 'development'
        ? song
        : 'file:///resources/Music/Taxi.mp3';



class Home extends Component {
    constructor(props) {
        super(props);

        this.state = {};
    }

    componentDidMount() {
        fileSearch.search()
    }

    render() {
        return (
            <div id="page">
                <h1>laceHolder Home</h1>
                <div>
                    <Testpage song={dataPath}/>
                </div>
            </div>
        );
    }
}

export default Home;
const testFolder = './';
const fs = require('fs');

export default class FileSearch {

    search = () => {
        fs.readdir(testFolder, (err, files) => {
            files.forEach(file => {
                console.log(file);
            });
        });
    }
}
wgmfuz8q

wgmfuz8q1#

解决,经过几个小时的寻找(我很新的React和电子),
我用下面的代替香草fs导入和它的工作!

const remote = window.require('electron').remote;
const electronFs = remote.require('fs');
const electronDialog = remote.dialog;

感谢您的意见,看看窗口。

相关问题