javascript - regulares - regex diagonal
Las llaves(llaves) en el nodo requieren declaraciĆ³n (2)
Con
const electron = require(''electron'')
el módulo
ipcMain
estará disponible como
electron.ipcMain
Con
const {ipcMain} = require(''electron'')
el módulo
ipcMain
estará disponible como
ipcMain
Esta construcción se llama desestructuración de objetos y logra lo mismo que la construcción de Python
from library import ...
En su forma básica, le permite referirse a las propiedades de un objeto directamente
var o = {prop1: ''1'', prop2: 2}
var {prop1, prop2} = o
console.log(prop1) // ''1'' (same as o.prop1)
console.log(prop2) // 2 (same as o.prop2)
Cheque:
const {ipcMain} = require(''electron'')
const myElectron = require(''electron'')
const myipcMain = myElectron.ipcMain
console.log(myipcMain===ipcMain) // true
Puede usar la asignación de desestructuración para importar varias propiedades de un objeto Javascript, por ejemplo:
const { app, BrowserWindow, ipcMain } = require(''electron'')
Si usa una propiedad que no existe, se establecerá como
undefined
y no obtendrá un error.
const {app, BrowserWindow, ipcMain, doesntExist} = require(''electron'')
console.log(doesntExist) // undefined
Ver también:
¿Qué hacen las llaves en las declaraciones
var { … } = …
?
Estoy tratando de entender la diferencia entre las dos declaraciones requeridas a continuación.
Específicamente, ¿cuál es el propósito de los
{ }
s envueltos alrededor de
ipcMain
?
const electron = require(''electron'')
const {ipcMain} = require(''electron'')
Ambos parecen asignar los contenidos del módulo de electrones, pero obviamente funcionan de manera diferente.
¿Alguien puede arrojar algo de luz?
El segundo ejemplo utiliza la desestructuración.
Esto llamará a la variable específica (incluidas las funciones) que se exportan desde el módulo requerido.
Por ejemplo (functions.js):
module.exports = {
func1,
func2
}
está incluido en su archivo:
const { func1, func2 } = require(''./functions'')
Ahora puedes llamarlos individualmente,
func1()
func2()
Opuesto a:
const Functions = require(''./functions'')
se llaman usando notación de puntos:
Functions.func1()
Functions.func2()
Espero que esto ayude.
Puede leer sobre la desestructuración here , es una parte muy útil de ES6 y se puede usar con matrices y objetos.