电子/角度应用程序可以访问文件夹中的视频。

时间:2018-04-11 18:39:51

标签: angular electron

我正在使用此资料包angular-electron

让我可以访问&#f;'在角度方面。

我有这个功能来遍历文件夹

fs.readdir(this.path, (err, items) => {
  for (let i = 0; i < items.length; i++) {
    const file = this.path + '/' + items[i];
    console.log('Start: ' + file);

    this.nodes.push({

      source: file

    })


    fs.stat(file, function(err, stats) {
      console.log(file);
      console.log(stats['size']);
    });
    console.log(this.nodes)
  }
})

我找回了视频的正确文件路径,但是,当我将其用作视频播放器的src时,我找不到文件。

也许我错过了一些基本的东西,但我的目的是遍历userPath中文件夹中的文件并返回其中的视频列表以用作视频播放器的媒体。

1 个答案:

答案 0 :(得分:1)

Electron使用Chromium来展示您的应用。它仍然只是一个浏览器 - 相同的限制,如它无法直接访问本地文件系统。

您可以设置Express为Electron的浏览器提供文件,例如:

const express = require('express');
const app = express();    
app.use('/', express.static(this.path)); 
app.listen(3003);

现在,如果pic.jpg中有this.path,您可以在Angular端执行此操作:

<img [src]="'http://localhost:3003/pic.jpg'" />

我不完全确定这是否会导致cors问题,但如果确实如此,只需添加cors中间件,例如:https://github.com/expressjs/cors