如果 __dirname 为您提供了项目根目录中的文件夹?

if __dirname gets you the folders your in what gets you the root of the project?

考虑以下项目结构:

game.js 我有以下内容:

import React, {Component} from 'react';
import {Loop, Canvas, Sprite}     from '../components/';
import GameLoop           from '../engine/loop';
import path               from 'path';

export default class Game extends Component {

  constructor(props) {
    super(props);
  }

  render() {
    console.log();
    return (
      <Loop>
        <Canvas>
          <Sprite img={'/images/The-Poet.png'} />
        </Canvas>
      </Loop>
    );
  }
}

如果你看一下 Sprite 我正在尝试传递图像,但是在 electron 中我怎么会得到错误:

Failed to load resource: net::ERR_FILE_NOT_FOUND file:///images/The-Poet.png

如果我尝试使用 __dirname 它会显示 src/game/... 我需要所述图像的绝对路径。 想法?

您可以通过使用 app.getAppPath()

获取当前应用程序目录的路径来构建绝对路径

http://electron.atom.io/docs/api/app/#appgetapppath

由于 app 是一个主进程变量,并且您希望在渲染器进程中使用它,因此您必须使用 remote 来要求它。

var remote = require('remote')
var app = remote.require('app')