electron,browserify之后,fs.existsSync不是函数

electron, after browserify, fs.existsSync is not a function(electron,browserify之后,fs.existsSync不是函数)
本文介绍了electron,browserify之后,fs.existsSync不是函数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

我阅读了很多关于 browserify 和 electron 以及 gui 浏览器问题的信息但是browserify还是有问题,说fs.existsSync不是函数",required没有定义"

* 全文*我用电子创建了简单的 gui,有 package.json 文件、main.js 和 index.html 文件 + 3,4 个 html 文件,我想在其中创建与 require 一起使用的简单加载显示保存窗口"

该功能在 index.html 文件中有效,但在 load.html 文件中无法正常工作,因此我使用命令浏览 main.js

var fs = require('electron')//console.log(require('fs').existsSync);var remote = require('electron').remote;//var remote = require('remote');var dialog = require('electron').remote 

进入 main.bundle3.js,使用,(在 cmd 中)

浏览 main.js >main.bundle3.js

然后 load.html 文件大喊 require 没有定义和

<代码>>main.bundle3.js:6945 Uncaught TypeError: fs.existsSync 不是函数在对象.<匿名>(main.bundle3.js:6945)在 Object.require.36.fs (main.bundle3.js:6951)在 s (main.bundle3.js:1)在 main.bundle3.js:1在对象.<匿名>(main.bundle3.js:6794)在 Object.require.35._process (main.bundle3.js:6937)在 s (main.bundle3.js:1)在 e (main.bundle3.js:1)在 main.bundle3.js:1(匿名)@ main.bundle3.js:6945要求.36.fs @ main.bundle3.js:6951s@main.bundle3.js:1(匿名)@ main.bundle3.js:1(匿名)@ main.bundle3.js:6794要求.35._process @ main.bundle3.js:6937s@main.bundle3.js:1e@main.bundle3.js:1(匿名)@ main.bundle3.js:1

package.json

{名称":RDF",版本":0.1.0","main": "main.js",脚本":{测试":摩卡 -u 出口 -R 规格测试/索引"},开发依赖":{电子":^1.6.2",电子包装器":^8.6.0","html-browserify": "0.0.6",jquery":^3.2.1"}}

和 load.html 文件

<!DOCTYPE html><html><><meta charset="UTF-8"><script src="https://cdn.plot.ly/plotly-latest.min.js"></script><!--<script src="main.js"></script>--><script src="main.bundle3.js"></script><!-- <script type="text/javascript" src="main.js"></script>--><script type="text/javascript" src="./lib/jquery-1.7.2.min.js"></script></><身体><h3>加载</h3><p>加载数据</p><!--<input type="button" value="Details" onclick="javascript:$('#mainContainer').load('index.html');"/><br><div id="mainContainer"></div>--><div id="tab33">
<div style="text-align:center;"><input type="text" placeholder="只选择一个文件" id="actual-file" disabled="disabled"/><input type="button" value="选择一个文件" id="select-file"/></div><br><br><textarea id="content-editor" rows="5"></textarea><br><br><input type="button" id="save-changes" value="保存更改"/><input type="button" id="delete-file" value="删除文件"/></div><小时><div style="text-align:center;"><p>他的文件内容将与编辑器相同.</p><input type="button" value="选择一个文件" id="create-new-file"/></div><脚本>var fs = 要求('fs')var {remote} = require('electron').remote ;var {dialog} = require('electron').remotedocument.getElementById('select-file').addEventListener('click',function(){dialog.showOpenDialog(函数(文件名){如果(文件名 === 未定义){console.log("没有选择文件");}别的{document.getElementById('actual-file').value = fileNames[0];readFile(fileNames[0], fileReadComplete);}});},错误的);//document.getElementById('save-changes').addEventListener('click',function(){var actualFilePath = document.getElementById("actual-file").value;如果(实际文件路径){saveChanges(actualFilePath,document.getElementById('content-editor').value);}别的{alert("先选择一个文件");}},错误的);//document.getElementById('delete-file').addEventListener('click',function(){var actualFilePath = document.getElementById("actual-file").value;如果(实际文件路径){删除文件(实际文件路径);document.getElementById("实际文件").value = "";document.getElementById("content-editor").value = "";}别的{alert("先选择一个文件");}},错误的);document.getElementById('create-new-file').addEventListener('click',function(){var content = document.getElementById("content-editor").value;dialog.showSaveDialog(函数(文件名){如果(文件名 === 未定义){console.log("你没有保存文件");返回;}fs.writeFile(文件名,内容,功能(错误){如果(错误){alert("创建文件出错"+ err.message)}alert("文件保存成功");});});},错误的);函数文件读取完成(数据){我的数据 = 数据;//做你想做的}函数读取文件(文件路径,回调){fs.readFile(filepath, 'utf-8', function (err, data) {如果(错误){alert("读取文件出错:" + err.message);返回;}回调(数据);document.getElementById("content-editor").value = data;});}函数删除文件(文件路径){fs.exists(文件路径,函数(存在){如果(存在){//文件存在删除fs.unlink(文件路径,函数(错误){如果(错误){alert("更新文件出错"+ err.message);控制台日志(错误);返回;}});} 别的 {alert("此文件不存在,无法删除");}});}函数 saveChanges(文件路径,内容){fs.writeFile(文件路径,内容,功能(错误){如果(错误){alert("更新文件出错"+ err.message);控制台日志(错误);返回;}alert("文件保存成功");});}</脚本></div><!-- <script data-main="main" src="require.js"></script>--></身体></html>

完整的 main.js 文件

//console.log(require('fs'));console.log(require('module').globalPaths);常量 {电子} = 要求('电子');常量 {浏览器窗口} = 要求('电子')常量 {应用程序} = 要求('电子');//@show(应用程序)常量路径 = 要求('路径')//console.log(process.env.PATH);//(D:electron-v1.6.1-win32-x64
esourcesdefault_app.asrmain.js:325:5)//const BrowserWindow = require('browser-window')常量 url = 要求('url')var html = require('html-browserify');var fs = require('电子')//console.log(require('fs').existsSync);var remote = require('electron').remote;//var remote = require('remote');var dialog = require('electron').remote//dialog = require('electron').dialog//对话 =remote.require('对话')//var load_=require('./load_.js')//浏览 htmlvar through = require('through');var htmlclean = 需要('htmlclean');module.exports = 函数(文件,选项){选项 = 选项 ||{};options.htmlclean =typeof options.htmlclean !== '未定义'?options.htmlclean:真;变量缓冲区 = '';if (!/.(tpl|html)/.test(file)) {通过()返回;} 别的 {返回通过(函数(块){返回缓冲区 += chunk.toString();}, 功能() {var jst = buffer.toString();如果(options.htmlclean){//options.htmlclean 是真的if (typeof options.htmlclean === 'object') {//options.htmlclean 是 htmlclean 模块的选项对象jst = htmlclean(jst, options.htmlclean);} 别的 {//否则,使用默认选项清理jst = htmlclean(jst);}}var 编译 = 'module.exports = ';编译 += JSON.stringify(jst);编译 += ';
';this.queue(编译);返回 this.queue(null);});}}//requirejs.config({//默认从js/lib加载任何模块ID//baseUrl: 'js/lib',//除了,如果模块ID以app"开头,//从 js/app 目录加载它.路径//config 是相对于 baseUrl 的,并且//从不包含.js"扩展名,因为//路径配置可以是一个目录.//路径:{// 应用程序: '  '/
                本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!
                
上一篇:“未捕获的类型错误:React.createClass 不是函数"在 Render.js 文件中(电子应用程序 下一篇:从电子网络视图中获取选定的文本
相关文档推荐 从谷歌驱动器打开 html opening html from google drive(从谷歌驱动器打开 html) 谷歌应用程序脚本从二进制文件中获取字节范围 Google apps script get range of bytes from binary file(谷歌应用程序脚本从二进制文件中获取字节范围) 使用 Google 脚本从 Google Drive 发送多个附件 Sending Multiple attachments with Google Script from Google Drive(使用 Google 脚本从 Google Drive 发送多个附件) 在您的公司网络中分发适用于表格的 Google Apps 脚本 Distributing Google Apps Scripts for Sheets in your company network(在您的公司网络中分发适用于表格的 Google Apps 脚本) 使用 javascript 将文件从任何人上传到我的谷歌驱动器 Upload file to my google drive from anyone using javascript(使用 javascript 将文件从任何人上传到我的谷歌驱动器) “共享驱动器"Google Apps 脚本中的支持 quot;Shared Drivequot; support in Google Apps Script(“共享驱动器Google Apps 脚本中的支持)
栏目导航 前端开发问题Java开发问题C/C++开发问题Python开发问题C#/.NET开发问题php开发问题移动开发问题数据库问题 最新文章 • AJAX在GBK编码页面中传中文参数乱码... • 使用选择器在 CSS 中选择元素的前一... • 如何在 JS 中获取 CryptoJS.HmacSHA2... • 使用 css 复制 html 元素... • 管理静态 HTML 网站中重复代码的最佳... • JWT 未解码“JWT malformed";-... • PBEWithMD5AndTripleDES/CBC/PKCS5Pa... • 使用 Discord.js 向频道发送消息时遇... • 我正在尝试制作 discord.js 头像命令... • CSS 特性如何决定应用哪些样式?... • nth-子 CSS 选择器... • 错误 [ERR_REQUIRE_ESM]:不支持 ES ... 热门文章 • AJAX在GBK编码页面中传中文参数乱码... • 使用选择器在 CSS 中选择元素的前一... • 如何在 JS 中获取 CryptoJS.HmacSHA2... • 使用 css 复制 html 元素... • 管理静态 HTML 网站中重复代码的最佳... • JWT 未解码“JWT malformed";-... • PBEWithMD5AndTripleDES/CBC/PKCS5Pa... • 使用 Discord.js 向频道发送消息时遇... • 我正在尝试制作 discord.js 头像命令... • CSS 特性如何决定应用哪些样式?... • nth-子 CSS 选择器... • 错误 [ERR_REQUIRE_ESM]:不支持 ES ... 热门标签 织梦资讯网 织梦模板 dede 外语学校 织梦鬼故事 竞价网站源码 竞价培训网 门户网站 织梦二次开发 织梦笑话网 dedecms笑话网 织梦源码 网站建设 搞笑图片 织梦教程 旅游网站源码 织梦旅游网 学校培训 html5 企业织梦源码 医院源码 后台样式 移动营销页 整形医院 大学医院 新手建站 客服代码 洗衣机维修 企业网站 淘宝客 导航菜单 教育网站 学校源码 装修网站 装修模板 美容整形 女性健康 妈妈网 机械源码 建站公司 珠宝首饰 苹果网站 手机资讯 美女图片 织梦模版打包 妇科源码 安卓市场源码 男性时尚网 健康之家 app应用网站 笑话网站 下载站 美女图片网 中医院网站 家装网站源码 QQ网站 标牌网站 魔兽世界网 淘宝客源码 YY网站源码 别墅设计网站 服装搭配网 宝宝起名网 站长网站 婚庆网站 脑科医院源码 笑话源码 肝胆医院 意外怀孕源码 工作室
网站首页 - 免责声明- 最新公告- 充值相关 - 网站地图 Copyright © 2021-2022 深圳市沃梦达电子商务有限公司 All Rights Reserved. 粤ICP备14083021号