[RFC] perf: use an internal module resolver to improve require performance (#14633)
* perf: use an internal module resolver instead of relative requires * perf: memoize the results of getting exported Electron properties * perf: make internal module changes consistent across sandboxed / bundled files
This commit is contained in:
parent
73d1b76b54
commit
54ef906832
32 changed files with 156 additions and 73 deletions
|
@ -2,7 +2,7 @@
|
|||
/* global binding, Buffer */
|
||||
const events = require('events')
|
||||
|
||||
process.atomBinding = require('../common/atom-binding-setup')(binding.get, 'renderer')
|
||||
process.atomBinding = require('@electron/internal/common/atom-binding-setup')(binding.get, 'renderer')
|
||||
|
||||
// The electron module depends on process.atomBinding
|
||||
const electron = require('electron')
|
||||
|
@ -41,7 +41,7 @@ const {
|
|||
preloadSrc, preloadError, process: processProps
|
||||
} = electron.ipcRenderer.sendSync('ELECTRON_BROWSER_SANDBOX_LOAD')
|
||||
|
||||
require('../renderer/web-frame-init')()
|
||||
require('@electron/internal/renderer/web-frame-init')()
|
||||
|
||||
// Pass different process object to the preload script(which should not have
|
||||
// access to things like `process.atomBinding`).
|
||||
|
@ -76,7 +76,7 @@ function preloadRequire (module) {
|
|||
|
||||
if (window.location.protocol === 'chrome-devtools:') {
|
||||
// Override some inspector APIs.
|
||||
require('../renderer/inspector')
|
||||
require('@electron/internal/renderer/inspector')
|
||||
}
|
||||
|
||||
if (binding.guestInstanceId) {
|
||||
|
@ -85,8 +85,8 @@ if (binding.guestInstanceId) {
|
|||
|
||||
if (!process.guestInstanceId && preloadProcess.argv.indexOf('--webview-tag=true') !== -1) {
|
||||
// don't allow recursive `<webview>`
|
||||
require('../renderer/web-view/web-view')
|
||||
require('../renderer/web-view/web-view-attributes')
|
||||
require('@electron/internal/renderer/web-view/web-view')
|
||||
require('@electron/internal/renderer/web-view/web-view-attributes')
|
||||
}
|
||||
|
||||
// Wrap the script into a function executed in global scope. It won't have
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue