JavaScript (node.js) 中的 {app, BrowserWindow} 是什么意思

What does {app, BrowserWindow} means in JavaScript (node.js)?(JavaScript (node.js) 中的 {app, BrowserWindow} 是什么意思?)
本文介绍了JavaScript (node.js) 中的 {app, BrowserWindow} 是什么意思?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在阅读使用 electron 制作软件的文档时,我在 index.js 文件(一般执行开始的文件)

While reading docs of making softwares with electron, I came across this type of code in the beginning of index.js file (the file where generally execution starts)

const {app, BrowserWindow} = require('electron')

{app, BrowserWindow}(语法,而不是关键字)的真正含义是什么?它是 JavaScript 语法,还是 node.js 的东西,还是与电子相关的东西?

What does {app, BrowserWindow} (the syntax, not the keywords) really means? Is it a JavaScript syntax, or a node.js thing or something exclusively related to electron?

推荐答案

这种语法称为对象解构",它是最新版本的 JavaScript(JavaScript2015 aka ECMAScript 6/ES6)的一个特性 - appBrowserWindow 只是您希望在应用程序的这一部分中使用的 electron 的特定部分.

This syntax is called 'object destructuring', and it is a feature of the latest version of JavaScript (JavaScript2015 aka ECMAScript 6/ES6) - app and BrowserWindow are just particular parts of electron that you want to use in this portion of your application.

这是一种简化代码并轻松引用依赖项关键部分的方法.

It's a way to simplify your code and to easily reference critical parts of a dependency.

这是 https:///developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment

var o = {p: 42, q: true};
var {p, q} = o;

console.log(p); // 42
console.log(q); // true

所以在你的例子中,electron 是一个导入的模块,看起来像(同样,这里过于简单化了):

So in your case, electron is an imported module that would look something like (again, a gross oversimplification here):

var electron = {
    app: {
        greet: () => {
            console.log("Hello, world!")
        }
    },
    BrowserWindow: {/* some other stuff *
本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Update another component when Formik form changes(当Formik表单更改时更新另一个组件)
Formik validation isSubmitting / isValidating not getting set to true(Formik验证正在提交/isValiating未设置为True)
React Validation Max Range Using Formik(使用Formik的Reaction验证最大范围)
Validation using Yup to check string or number length(使用YUP检查字符串或数字长度的验证)
Updating initialValues prop on Formik Form does not update input value(更新Formik表单上的初始值属性不会更新输入值)
password validation with yup and formik(使用YUP和Formick进行密码验证)