Skip to content

Pass objects from browser to renderer-side at window creation, as argument of "new BrowserWindow()" or ".loadUrl()", to avoid pollution of the global scope #1095

Closed
@cronvel

Description

@cronvel

The remote module is really handy, however I don't like to pollute the global scope of the browser-side just to provide some objects to the renderer's remote module, using remote.getGlobal(name).

It would be nice if we can pass some objects from browser-side to renderer-side, either at the BrowserWindow creation or when using .loadUrl().

Implementation example, browser-side:

var somethingIWantToShare = {
  myFunction: function() {
    // some code
  } ,
  ...
  // some properties and methods here
} ;

mainWindow.loadUrl( 'file://' + __dirname + '/html/main.html' , {
  rendererSideName: somethingIWantToShare ,
  anotherRendererSideName: ... // another object to share
} ) ;

Renderer-side:

remote.rendererSideName.myFunction() ;
remote.anotherRendererSideName.myOtherFunction() ;

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions