【问题标题】:Electron Packager - working with relative pathsElectron Packager - 使用相对路径
【发布时间】:2020-01-18 13:57:24
【问题描述】:

我想知道在使用电子打包器时如何处理应用程序中的相对路径。

在我的应用程序源文件夹中,我有一些 json 文件和我引用的其他文件。打包时,electron-packager 创建 \resources\app 目录并将所有这些文件放入该目录。这意味着我在开发过程中使用的任何相对路径在打包的应用程序中都会失败。

我尝试通过在我的源目录中创建 \resources\app 文件夹来预先设置它,希望打包程序会注意到它们并直接移动它们,但它创建了 \resources\app\resources\app。

【问题讨论】:

    标签: javascript electron electron-packager


    【解决方案1】:

    我已成功使用__dirnameupath 构建资产路径。

    我喜欢upath 而不是path,因为它有一个toUnix 方法“在所有字符串参数和结果中用unix / 替换windows \。”

    var imgPath = upath.toUnix(upath.join(__dirname, "assets","welcome.png")); 
    

    【讨论】:

    • 打包时这些会改变吗?我的问题不一定是我无法访问路径 - 这是电子打包程序创建文件夹并移动文件,因此打包时相对路径会中断。
    • “这是电子打包程序创建文件夹并移动文件,因此打包时相对路径会中断。” 这不是我的经验。可能我的目录结构不一样。
    • 也许吧。对我来说,生成的主要可执行文件位于应用程序根文件夹中,然后将之前位于根目录中的所有资源放入 /resources/app 文件夹中。
    • 谢谢,使用 __dirname 是我缺少的部分。该变量将始终解析为正确的目录。
    猜你喜欢
    • 1970-01-01
    • 2017-12-22
    • 2017-12-06
    • 2020-02-14
    • 2017-01-19
    • 1970-01-01
    • 2012-01-10
    • 2014-02-20
    • 1970-01-01
    相关资源
    最近更新 更多