reactjs - 如何使电子窗口自动适应内容?
问题描述
我用 create-react-app 创建了一个基本的应用程序,并用 Electron 包装了它。现在我只是在尝试一些东西,但我想要实现的只是一个适合内容大小的电子窗口。我几乎没有改变 CRA;我所做的就是用这个替换 App.js:
function App() {
return (
<div style={{ height: '100px', width: '200px', background: 'slategray' }}>
This is some stuff
</div>
);
}
所以它应该渲染的是一个大小为 200x100 的 div。至于电子代码:
const { app, BrowserWindow, globalShortcut } = require('electron');
const isDev = require('electron-is-dev');
const path = require('path');
let mainWindow;
function createWindow() {
mainWindow = new BrowserWindow({
// width: 80,
// height: 60,
useContentSize: true,
show: false,
// frame: false,
// transparent: true,
});
const startURL = isDev ? 'http://localhost:3000/app' : `file://${path.join(__dirname, '../build/index.html')}`;
mainWindow.loadURL(startURL);
mainWindow.once('ready-to-show', () => {
mainWindow.show()
});
mainWindow.on('closed', () => {
mainWindow = null;
});
}
app.on('ready', createWindow);
我已经尝试设置width
和height
特定值,并尝试将它们注释掉,如上所示,但没有任何变化;每当我启动应用程序时,窗口都会以指定的方式打开width
,height
而不是像我期望的那样打开 200x100 useContentSize: true
。
解决方案
推荐阅读
- javascript - 表单中的单选按钮可以用于选择同一表单中的另一个单选按钮吗?
- php - 使用 PHP SDK 标记为已付款后,有什么方法可以编辑 xero 发票?
- google-apps-script - 由于触发器是由现已禁用的 Google Workplace 用户创建而被禁用的,有什么好的解决方法?
- r - 行绑定嵌套列表中存在的所有小标题
- c++ - 我怎样才能得到所有大小为k的字符串子字符串?
- arrays - 调用实例方法“附加”时没有完全匹配
- javascript - 没有使用 PM2 获取 log4js 的任何日志
- javascript - 为什么这种样式属性分配在 React Native 中不能按预期工作?
- apache-spark - Spark Trino 连接
- perl - Perl 命令在命令行上运行时执行良好,但在 Perl 脚本中不起作用