Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 我对Node';电子渲染器中的readFile方法?_Javascript_Node.js_Typescript_Electron_Electron Forge - Fatal编程技术网

Javascript 我对Node';电子渲染器中的readFile方法?

Javascript 我对Node';电子渲染器中的readFile方法?,javascript,node.js,typescript,electron,electron-forge,Javascript,Node.js,Typescript,Electron,Electron Forge,我已经创建了一个最小复制应用程序,它基于“typescript+webpack”演示了我的问题。为了证明我的问题,我做了一些修改,您可以。自述文件包含所有必要的复制说明(非常简单) 基本上,我所做的是创建一个src/other.html文件,我的目标是加载该文件的内容并用新内容替换#main contentdiv的内容(位于src/index.html)。执行此操作的代码位于src/renderer.ts中,但下面是有问题的代码: 从“fs”导入fs; 从“路径”导入路径; const cont

我已经创建了一个最小复制应用程序,它基于“typescript+webpack”演示了我的问题。为了证明我的问题,我做了一些修改,您可以。自述文件包含所有必要的复制说明(非常简单)

基本上,我所做的是创建一个
src/other.html
文件,我的目标是加载该文件的内容并用新内容替换
#main content
div的内容(位于
src/index.html
)。执行此操作的代码位于
src/renderer.ts
中,但下面是有问题的代码:

从“fs”导入fs;
从“路径”导入路径;
const contentElement=document.getElementById(“主内容”);
const linkElement=document.getElementById(“开关”);
如果(!contentElement)抛出“找不到主内容div.”;
如果(!linkElement)抛出“找不到链接元素”;
linkElement?.addEventListener(“单击”,(事件)=>{
event.preventDefault();
const href=linkElement.getAttribute(“href”);
如果(href){
const fullPath=path.join(uu dirname,href);
log(`Full path:${fullPath}`);
fs.readFile(完整路径,(错误,数据)=>{
如果(错误)抛出错误;
//显示所选页面
contentElement.innerHTML=“”;
insertAdjacentHTML(“beforeend”,data.toString());
});
}
});
它添加了一个单击处理程序,该处理程序获取href属性值,并尝试使用
\uuu dirname
构建新文件的路径,前提是两个HTML文件位于同一目录中

我在开发人员控制台中遇到以下错误,而不是按预期工作的代码:

我查看了
Resources
目录,该目录预计
electron.asar
将位于其中,但我只看到
default\u app.asar
和其他一些不相关的内容。我想这就是我出错的原因。我对javascript/typescript或其周围的任何生态系统了解不够,无法真正理解这里发生了什么

一些版本号:

  • electron forge
    v6 beta 54
  • electron
    11.0.3
  • 节点
    12.20.0

@StackSlave将是typescript的。在这个例子中实际上不需要,因为如果错误还没有出现,我会抛出一个错误。
Uncaught Error: Invalid package /Users/taylorthurlow/Temp/electron-problem-min-repro/node_modules/electron/dist/Electron.app/Contents/Resources/electron.asar
    at createError (electron/js2c/asar_bundle.js:5)
    at Object.e.readFile (electron/js2c/asar_bundle.js:5)
    at HTMLAnchorElement.<anonymous> (renderer.ts:50)
createError @ electron/js2c/asar_bundle.js:5
e.readFile @ electron/js2c/asar_bundle.js:5
(anonymous) @ renderer.ts:50
Full path: /Users/taylorthurlow/Temp/electron-problem-min-repro/node_modules/electron/dist/Electron.app/Contents/Resources/electron.asar/renderer/other.html