pkg打包 文件读取 导致闪退问题

原因

pkg可以解析require的导入,js文件可以交给pkg去解析

但如果是读取其他类型文件,又使用了__dirname,在开发环境是没问题的

但在打包后就会有问题

因为开发时__dirname是指向项目目录的,而打包后则指向snapshot

解决办法

需要配置把需要导入的资源放到assets里声明

package.json里新增pkg属性,具体如下

 "pkg": {
    "assets": [
      "assets/**/*"
    ],
  }

如果不添加,以下代码案例就会导致闪退

const txtContent = fs.readFileSync(path.resolve(__dirname,'./assets/aa.txt'), "utf-8");

因为执行文件里是没有aaa.txt,这个读取路径是C:\snapshot\里的

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容