Replace 'Prompt' in on Electron

前端 未结 2 691
梦如初夏
梦如初夏 2020-12-10 01:53

How to replace the function of javascript prompt in electron?

Can someone give me an example?

I tried to use the function prompt,

相关标签:
2条回答
  • 2020-12-10 02:21

    prompt, confirm and alert are functions which blocks the execution thread of the script until a user input and that's the reason electron team didn't supported it. Instead you can use some third party package for the same reason.

    Here are some packages which provides this functionality in async way

    https://www.npmjs.com/package/smalltalk

    https://www.npmjs.com/package/vex-js

    https://www.npmjs.com/package/dialogs

    0 讨论(0)
  • 2020-12-10 02:43

    My answer is a little late but maybe still helpful for others.

    Since the Electron team does not want to implement the prompt() behavior themselves, I developed this solution: electron-osx-prompt. It provides a Promise-based way to get some simple user input and adapts to the macOS styling.

    // From renderer or main process, doesn't matter
    const userPrompt = require('electron-osx-prompt');
    
    const icon = __dirname + '/icon.png';
    
    userPrompt('Label text', 'Placeholder text', icon)
      .then(input => {
        console.log(input);
      })
      .catch(err => {
        console.log(err);
      });
    
    0 讨论(0)
提交回复
热议问题