电子中的http协议不能要求渲染器
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了电子中的http协议不能要求渲染器相关的知识,希望对你有一定的参考价值。
任何人都可以解释为什么这段代码不起作用?我试图在文件协议中要求渲染器(没有快速静态服务器),它很好,但当我用http协议这样做时,我得到了Uncaught Error: Cannot find module './renderer'
!
有没有办法在http中要求自定义模块?
谢谢 ...
结构体
- project
+ node_modules
- app.js
- index.html
- package.json
- renderer.js
app.js
const { app, BrowserWindow } = require('electron');
const express = require('express');
const path = require('path');
const url = require('url');
const server = express();
server.use(express.static(__dirname));
app.on('ready', () => server.listen(3000, createWindow));
function createWindow() {
let win = new BrowserWindow({ width: 800, height: 600 });
win.loadURL(url.format({
protocol: 'http',
hostname: 'localhost',
port: 3000
}));
win.webContents.openDevTools();
win.on('closed', function () {
win = null;
app.quit();
});
}
的index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Test</title>
</head>
<body>
<div id="root"></div>
<script>
require('./renderer');
</script>
</body>
</html>
renderer.js
var root = document.getElementById('root');
root.innerHTML = 'Hello, World !';
- 电子版:1.7.10
- 操作系统:Windows 10
答案
就像你对任何其他模块一样需要它并指定路径,在你的情况下:
require('./renderer')
以上是关于电子中的http协议不能要求渲染器的主要内容,如果未能解决你的问题,请参考以下文章
GLSL:无法从 FBO 读取纹理并使用片段着色器渲染到另一个 FBO