2016-08-15 2 views
0

Я столкнулся с следующей ошибкой, пытаясь запустить мое электронное приложение через npm start. Вот сообщение об ошибке:ТипError: Невозможно прочитать свойство 'setZoomLevelLimits' of undefined

TypeError: Cannot read property 'setZoomLevelLimits' of undefined

Ниже код:

const electron = require("electron").webFrame.setZoomLevelLimits(1, 1); 
const app = electron.app; 
const BrowserWindow = electron.BrowserWindow; 


let mainWindow; 

app.on("ready", function(){ 
    mainWindow = new BrowserWindow({ 
    width: 800, 
    height: 600, 
    frame: false, 
    kiosk: true 
    }); 

    mainWindow.loadURL("file://" + __dirname + "/index.html"); 

    // Debug3 
    // mainWindow.openDevTools({ detach: true }); 
}); 

Я пытаюсь предотвратить пользователя для перетаскивания и масштабирования на экране на моем рабочем столе приложения, и website-user-drag: none не работает, а как это:

<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height, target-densitydpi=device-dpi" /> 

ответ

1

const electron = require("electron").webFrame.setZoomLevelLimits(1, 1);

  1. webFrame, доступный только в процессе рендеринга, вы пытаетесь получить к нему доступ в основном/браузере.
  2. Даже если webFrame был доступен в основном процессе setZoomLevelLimits(1, 1) не возвращает ссылку на electron модуль таким образом, остальная часть кода не будет работать, потому что const electron будет undefined.
+0

Благодарим вас за ответ. Каким будет ваше решение? – John

+0

@John Вам нужно вызвать 'require (« электрон »). WebFrame.setZoomLevelLimits (1, 1)' в процессе рендеринга, вы можете сделать это внутри тега '

Смежные вопросы