vue转electron项目及解决使用fs报错:Module not found: Error: Can't resolve 'fs' in

 更新时间:2022年11月23日 15:26:28   作者:luffy5459  
这篇文章主要给大家介绍了关于vue转electron项目及解决使用fs报错:Module not found: Error: Can‘t resolve ‘fs‘ in的相关资料,文中通过图文以及实例代码介绍的非常详细,需要的朋友可以参考下

前面写了一篇博客,通过vue ui创建electron+vue项目,其实关键的一步就是增加vue-cli-plugin-electron-builder插件依赖。这一步可以通过界面上添加,也可以手动添加。

手动添加就是在命令行下运行如下命令:

vue add electron-builder

该命令可以安装vue-cli-plugin-electron-builder并且安装electron,它会提供几个版本给你选择,一般默认选择最高版本即可。

构建electron项目主要是安装electron环境,在使用上面的命令添加electron-builder的时候,会下载electron版本,为了提高下载速度,一般会设置一个npm变量electron_mirror。我一般是设置在npmrc配置文件中,和npm registry一起:

registry=https://registry.npm.taobao.org
electron_mirror=https://npm.taobao.org/mirrors/electron/

注意electron_mirror设置后面的/,如果丢失,那么下载electron一定会失败,导致安装失败。     

设置了electron镜像地址,那么vue add electron-builder命令会很快执行成功:

最后,启动项目,执行命令:npm run electron:serve

//

上面增加了electron,该项目就是一个桌面程序了,可以使用node环境,当我高兴的引入fs的时候,启动项目竟然报错了:

Module not found: Error: Can't resolve 'fs' in 

这个错误,并不是缺少依赖,而是系统默认不支持node,需要将node集成进来,好在vue项目有一个配置文件vue.config.js,在这个文件里面,添加一个配置:pluginOptions:{electronBuilder:{nodeIntegration:true}},如下所示:

module.exports = defineConfig({
  transpileDependencies: true,
  pluginOptions:{
    electronBuilder:{
      nodeIntegration:true
    }
  }
})

最后就可以像下面这样使用fs了。

<template>
  ...
</template>
<script>
import fs from 'fs'
...
 
fs.readFile("/etc/profile",function(err,data){
    console.log(data.toString())
})
</script>

如下所示,我读取mac系统下的profile配置文件,最后成功读取并通过控制台打印出来了:

这篇文章是根据自己今天在实际工作中遇到问题总结,以前也做过electron项目,但是没有遇到过node环境这个问题,总算解决了。我看有的项目使用webpack管理,如果遇到无法使用fs,那么就需要把fs加入到webpack.config.js的配置项中,好像叫fs:empty,我没试过。

总结

到此这篇关于vue转electron项目及解决使用fs报错:Module not found: Error: Can't resolve 'fs' in的文章就介绍到这了,更多相关vue转electron项目及fs报错内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 解决vue页面刷新或者后退参数丢失的问题

    解决vue页面刷新或者后退参数丢失的问题

    下面小编就为大家分享一篇解决vue页面刷新或者后退参数丢失的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-03-03
  • VUE+elementui面包屑实现动态路由详解

    VUE+elementui面包屑实现动态路由详解

    今天小编就为大家分享一篇VUE+elementui面包屑实现动态路由详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-11-11
  • vue-cli项目修改文件热重载失效的解决方法

    vue-cli项目修改文件热重载失效的解决方法

    今天小编就为大家分享一篇vue-cli项目修改文件热重载失效的解决方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-09-09
  • Vuex modules模式下mapState/mapMutations的操作实例

    Vuex modules模式下mapState/mapMutations的操作实例

    这篇文章主要介绍了Vuex modules 模式下 mapState/mapMutations 的操作实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-10-10
  • Vue组件传参11种方式举例介绍

    Vue组件传参11种方式举例介绍

    这篇文章主要给大家介绍了关于Vue组件传参11种方式的相关资料,文中通过代码示例介绍的非常详细,对大家学习或者使用vue具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-09-09
  • vue中pinia数据一直重复获取之前的值的解决方法

    vue中pinia数据一直重复获取之前的值的解决方法

    这篇文章主要介绍了vue中pinia数据一直重复获取之前的值的解决方法,如果想让pinia数据不会重复获取之前的值需要手动强制触发 Pinia store 的状态更新,文中有详细的解决方法,需要的朋友可以参考下
    2024-04-04
  • 详解用vue.js和laravel实现微信支付

    详解用vue.js和laravel实现微信支付

    本篇文章主要介绍了用vue.js和laravel实现微信支付,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06
  • Vue+axios+WebApi+NPOI导出Excel文件实例方法

    Vue+axios+WebApi+NPOI导出Excel文件实例方法

    在本篇文章里小编给大家整理关于Vue+axios+WebApi+NPOI导出Excel文件的知识点以及实例代码,需要的朋友们参考下。
    2019-06-06
  • Vue中子组件向父组件传值以及.sync修饰符详析

    Vue中子组件向父组件传值以及.sync修饰符详析

    .sync 修饰符所提供的功能,当一个子组件改变了一个prop的值时,这个变化也会同步到父组件中所绑定,下面这篇文章主要给大家介绍了关于Vue中子组件向父组件传值以及.sync修饰符的相关资料,需要的朋友可以参考下
    2022-11-11
  • 利用Vue实现一个累加向上漂浮动画

    利用Vue实现一个累加向上漂浮动画

    在不久之前,看到一个比较有意思的小程序,就是静神木鱼,可以实现在线敲木鱼,自动敲木鱼,手盘佛珠,静心颂钵的,下面就来揭秘如何实现这个小程序中敲木鱼的累加向上漂浮动画,需要的可以参考一下
    2022-11-11

最新评论