问题标签 [preloadjs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
383 浏览

javascript - 无法读取未定义的属性“getContext” - 电子

在触发从 ipcMain 到窗口的事件后,我试图在easeljs 中动态生成精灵表。

我遇到的问题是 preloadjs/easeljs 在控制台中触发了这个错误:

无法读取未定义的属性“getContext”

它只发生在我打包应用程序之后,而不是在开发模式下,一切都按预期工作。

这是我从窗口中获取的代码

这里是我的 electron.js 代码。

谢谢!

0 投票
2 回答
385 浏览

javascript - PreloadJS 加载图像,但我无法将其插入 DOM

我正在尝试使用PreloadJS预加载一个图像,然后将其插入 DOM 两次。但我只能插入一张图片。

截图:https ://i.imgur.com/VQwAABM.jpg

我不明白为什么只出现一张图像。我做错了什么?以及如何将图像插入两次?谢谢!

0 投票
0 回答
1360 浏览

javascript - 预加载由 PreloadJS 加载两次的 bodymovin/lottie 生成的 json 文件

我正在尝试通过 PreloadJS 库为我的网站创建预加载。

在该网站上,我通过 bodymovin / lottie 创建了十几个项目。

Bodymovin 使用图形元素和动画的所有信息创建 json 文件。使用 Lottie 将其呈现为 svg。

如果没有 PreloadJS,json 文件通常由浏览器加载,但使用 PreloadJS,它首先由浏览器加载,然后第二次预加载。

所以我想知道我做错了什么。

重复的预加载文件示例
两次预加载文件

我对图像(加载两次)有同样的问题,但我解决了将“false”添加到“new createjs.LoadQueue(false)”但对于所有其他文件类型(json、js、css)的加载两次问题仍然存在。

预载部分



乐蒂部分

0 投票
2 回答
71 浏览

preloadjs - 当我将“false”添加到 createjs.LoadQueue() 时,为什么进度事件会停止触发?

好的,文档充其量是混乱的。如果我不向 PreloadJS 的实例添加“假”,我会在淡入和淡出预加载资产时遇到巨大的问题。但是当我添加它时,我完全失去了进度事件......文档中隐藏得如此之深的东西是什么,我找不到任何关于这个的东西?

有没有人有一个完整的例子来说明如何在不丢失进度事件的情况下实际并正确地加载图像数组(实际上是一个对象),并且在将其添加到 DOM 并淡入时仍然有一个行为符合预期的资产?

0 投票
1 回答
1083 浏览

javascript - Electron - preload.js 未加载并且在 Windows 10 上发生错误

当我在 Windows 10 上构建npm start应用程序时,它无法正常运行,而在 macOS 上运行良好。

包.json

我收到以下错误消息。

在此处输入图像描述

TypeError: ipcMain.handle is not a function这适用于:

main.js

这个函数是从ipcRenderer.invoke()写入的 ipc 通信的接收者preload.js。这就是下面源码invoke()中api中的方法。TimerStart

preload.js

当然,preload.js是在创建时指定的BrowserWindow

main.js

跳过此错误消息对话框后,我使用 DevTools 进行了检查,看起来好像preload.js没有从Unable to load preload script:.

在此处输入图像描述

鉴于这些陈述,似乎preload.js没有正确包含在构建中,我该怎么办?

再一次,它在 macOS 上运行良好,但由于这些问题,它在 Windows 10 上无法正常运行。

0 投票
1 回答
1800 浏览

electron - 如何使用 preload.js 将 ipcRenderer.invoke 处理程序答案传递给电子渲染器进程

我正在编写一个 CRA + Electron 应用程序,我需要使用 ipcRenderer.invoke 进行进程间通信。我能够使 ipcRenderer.send 和 ipcRender.on 在 contextIsolation 模式下工作,但 ipcRender.invoke 没有运气。由于某种我不明白的原因,我无法以任何形式(承诺或价值)将处理程序响应返回给渲染器,我得到的只是“未定义”值。

preload.js

main.js

Main.js 输出

渲染器.js

Renderer.js 输出

谁能指出我做错了什么?提前致谢

0 投票
1 回答
456 浏览

javascript - 如何在电子中正确使用预加载和 window.api 调用?

我在使用 render.js 文件从呈现的 html 页面的 javascript 编写“api”调用时遇到问题。

main.js 新增 BrowserWindow 功能包括:

preload.js:

passwordPage.js 链接在 passwordPage.html 中:

passwordPage 控制台中的错误:

0 投票
0 回答
121 浏览

reactjs - Electron-TypeScript-React 应用程序中本机模块的接口

我正在使用 Electron、React 和 TypeScript 编写一个依赖于本机 Node 模块的应用程序。我启用了上下文隔离,并且正在使用预加载脚本将本机模块的 API 公开到全局范围。我的预加载脚本如下所示:

在我的应用程序的非打字稿版本中,我可以通过以下方式使用它:

然而,TypeScript 显然没有原生模块的 API 概念。我应该如何让它知道?我取得的一项成功是index.tsx推杆:

但这似乎很笨拙。我应该在本机模块中放置一个 .d.ts 文件吗?我可以导出这个接口合并到不同的文件吗?作为参考,我将Neon与 N-API 后端一起使用。

0 投票
1 回答
36 浏览

binary - 是否可以使用 createjs 加载 midi 文件?

我正在开发一个 createjs 应用程序,该应用程序需要加载 midi 文件作为其功能的一部分。然后我打算使用 midiplayer.js 来播放文件。但是,我找不到任何使用 createjs 加载 midi 文件的示例。似乎我想将它作为二进制文件加载,然后将其作为 ArrayBuffer 输入 midiplayer.js,它可以处理。我被困在如何在 createjs 中读取 BINARY 文件类型。这是我想要做的一些示例代码:

一切似乎都很顺利。没有错误报告。我可以毫无问题地加载图像文件,如下所示:

let new_image = new createjs.Bitmap(queue.getResult("bach_score));

但是,我找不到如何加载二进制文件的示例。任何帮助表示赞赏。

所以这里有一个更新。看来我需要指定这是二进制类型。(我在上面添加了)。然后这应该调用binaryLoader类并给我我想要的东西。但是,它似乎不起作用。这可能是createjs中的错误吗?

###进一步更新:21 年 4 月 16 日

我挖掘了 createjs 代码并意识到发生了什么。由于我的文件的扩展名是 .mid (一个 midi 文件),soundjs 声称正在处理该文件。列出的扩展之一是 .mid 作为sound.js 的第 363 行的 SUPPORTED_EXTENSION。这检查了浏览器是否支持 MIDI 文件,但都不支持。我必须为此找到解决方法。

0 投票
0 回答
14 浏览

reactjs - 我想添加显示加载器的预加载器,直到加载组件的所有资产然后显示完整的网站

我正在开发我的 React 网站。这是我网站的链接,我使用了这个简单的设置超时,它不是动态的,我使用了 Suspense 延迟加载,但它没有按我的意愿工作。这是要与我的网站做的网站的链接 点击查看