create-react-app渲染进程中__dirname路径问题

来源:1-1 学习本课程的收获以及案例展示(内附彩蛋)

tulies

2021-09-08

老师你好请问下,开发模式下__dirname得到的路径不准确,这个有什么办法吗。

写回答

2回答

张轩

2021-09-11

同学你好 可以使用 app 上面的方法

const electron = window.require('electron')
console.log(electron.remote.app.getAppPath())
// 特别注意新版electron 启动渲染实例的时候要添加一个参数才有 remote
const mainWindow = new BrowserWindow(
    {
        width: 800,height: 600,
        webPreferences: 
        {
            preload: path.join(__dirname, 'preload.js'),
            nodeIntegration: true,
            // 特别注意这个参数
            enableRemoteModule: true
        }
     }
 )

//img.mukewang.com/szimg/613c71e3095bb5f515920556.jpg

0
1
tulies
非常感谢!
2021-09-13
共1条回复

张轩

2021-09-09

同学你好 能否详细说明一下 目前出问题的路径是什么?而你期望的到的路径是什么? 谢谢

0
1
tulies
比如项目路径是xxx。项目路径是/data/xxx, 然后渲染进程页面放在 /data/xxx/renderer/index.html。 我希望__dirname是/data/xxx/renderer,因为开发模式下渲染进程是一个http://localhost:3000地址,所以得到的是/。这应该是当成node的web服务取到的路径,我想要本地文件的实际路径,,这个怎么获取呢?
2021-09-10
共1条回复

2024更新 Electron+React+七牛云实战跨平台桌面应用

开发一款自动云同步的 Markdown 文件管理软件

1251 学习 · 463 问题

查看课程