Execute javascript file in child process within ElectronHow to execute a JavaScript function when I have its name as a stringJavaScript that executes after page loadHow do I include a JavaScript file in another JavaScript file?Remove all child elements of a DOM node in JavaScriptUsing Razor within JavaScriptList view getListItemXmlAttributes method fails with child publication itemsLink and execute external JavaScript file hosted on GitHubSpawn a child process in ElectronForking from Electron process fails on Windows only from installed executableHow to fork a child process with electron

IP addresses from public IP block in my LAN

29er Road Tire?

Where are the "shires" in the UK?

Has a commercial or military jet bi-plane ever been manufactured?

Is there a word that describe the non-justified use of a more complex word?

Shutter speed -vs- effective image stabilisation

In Russian, how do you idiomatically express the idea of the figurative "overnight"?

Do publishers care if submitted work has already been copyrighted?

How can internet speed be 10 times slower without a router than when using a router?

Building a list of products from the elements in another list

Word meaning as function of the composition of its phonemes

Can my company stop me from working overtime?

Adding command shortcuts to bin

What are the advantages of luxury car brands like Acura/Lexus over their sibling non-luxury brands Honda/Toyota?

Would glacier 'trees' be plausible?

Decoupling cap routing on a 4 layer PCB

How did the Venus Express detect lightning?

3D Volume in TIKZ

How to increase the size of the cursor in Lubuntu 19.04?

A factorization game

Out of scope work duties and resignation

Is there an idiom that support the idea that "inflation is bad"?

Does it make sense for a function to return an rvalue reference?

Gerrymandering Puzzle - Rig the Election



Execute javascript file in child process within Electron


How to execute a JavaScript function when I have its name as a stringJavaScript that executes after page loadHow do I include a JavaScript file in another JavaScript file?Remove all child elements of a DOM node in JavaScriptUsing Razor within JavaScriptList view getListItemXmlAttributes method fails with child publication itemsLink and execute external JavaScript file hosted on GitHubSpawn a child process in ElectronForking from Electron process fails on Windows only from installed executableHow to fork a child process with electron






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;








0















I've got an Electron app with Angular inside (last versions). I need to execute javascript (not typescript) file from the project in child process (some heavy things that I don't want to execute syncronously).


Tried this solutions:


1. Created function Loader, put all content there:



export function Loader() console.log(111); 


Then in component that creates child process:



import Loader from 'some/path/to/loader.js';

public doSomething(): void null): Promise<void> =>
if (code === 0)
console.log(`Finished with code $code`);
await this.someMethod();
else
console.error(`Exit code is $code`);


);





2.Removing Loader function wrapper, js file looks like



console.log(1111);


In component:



public doSomething(): void {
fork(
require.resolve('some/path/to/loader.js'),
[ ... some string args here ],
env: 'ELECTRON_RUN_AS_NODE': '1'
)
.on(// The same event handling


For both cases child process in prod mode or release build fails with code 1. The same code placed to Electron's main.ts file works.



How can I fix child process execution in the place where I'm calling it?










share|improve this question




























    0















    I've got an Electron app with Angular inside (last versions). I need to execute javascript (not typescript) file from the project in child process (some heavy things that I don't want to execute syncronously).


    Tried this solutions:


    1. Created function Loader, put all content there:



    export function Loader() console.log(111); 


    Then in component that creates child process:



    import Loader from 'some/path/to/loader.js';

    public doSomething(): void null): Promise<void> =>
    if (code === 0)
    console.log(`Finished with code $code`);
    await this.someMethod();
    else
    console.error(`Exit code is $code`);


    );





    2.Removing Loader function wrapper, js file looks like



    console.log(1111);


    In component:



    public doSomething(): void {
    fork(
    require.resolve('some/path/to/loader.js'),
    [ ... some string args here ],
    env: 'ELECTRON_RUN_AS_NODE': '1'
    )
    .on(// The same event handling


    For both cases child process in prod mode or release build fails with code 1. The same code placed to Electron's main.ts file works.



    How can I fix child process execution in the place where I'm calling it?










    share|improve this question
























      0












      0








      0








      I've got an Electron app with Angular inside (last versions). I need to execute javascript (not typescript) file from the project in child process (some heavy things that I don't want to execute syncronously).


      Tried this solutions:


      1. Created function Loader, put all content there:



      export function Loader() console.log(111); 


      Then in component that creates child process:



      import Loader from 'some/path/to/loader.js';

      public doSomething(): void null): Promise<void> =>
      if (code === 0)
      console.log(`Finished with code $code`);
      await this.someMethod();
      else
      console.error(`Exit code is $code`);


      );





      2.Removing Loader function wrapper, js file looks like



      console.log(1111);


      In component:



      public doSomething(): void {
      fork(
      require.resolve('some/path/to/loader.js'),
      [ ... some string args here ],
      env: 'ELECTRON_RUN_AS_NODE': '1'
      )
      .on(// The same event handling


      For both cases child process in prod mode or release build fails with code 1. The same code placed to Electron's main.ts file works.



      How can I fix child process execution in the place where I'm calling it?










      share|improve this question














      I've got an Electron app with Angular inside (last versions). I need to execute javascript (not typescript) file from the project in child process (some heavy things that I don't want to execute syncronously).


      Tried this solutions:


      1. Created function Loader, put all content there:



      export function Loader() console.log(111); 


      Then in component that creates child process:



      import Loader from 'some/path/to/loader.js';

      public doSomething(): void null): Promise<void> =>
      if (code === 0)
      console.log(`Finished with code $code`);
      await this.someMethod();
      else
      console.error(`Exit code is $code`);


      );





      2.Removing Loader function wrapper, js file looks like



      console.log(1111);


      In component:



      public doSomething(): void {
      fork(
      require.resolve('some/path/to/loader.js'),
      [ ... some string args here ],
      env: 'ELECTRON_RUN_AS_NODE': '1'
      )
      .on(// The same event handling


      For both cases child process in prod mode or release build fails with code 1. The same code placed to Electron's main.ts file works.



      How can I fix child process execution in the place where I'm calling it?







      javascript angular electron






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Mar 23 at 0:15









      WeekendManWeekendMan

      134214




      134214






















          2 Answers
          2






          active

          oldest

          votes


















          0














          You probably might want to use WebWorkers.



          You can move some of your heavy code to web-workers and keep your main thread non-blocked.



          let win = new BrowserWindow(
          webPreferences:
          nodeIntegrationInWorker: true

          )


          and then



          let worker = new Worker('script.js')


          https://electronjs.org/docs/tutorial/multithreading






          share|improve this answer
































            0














            If you are in the Renderer, I believe you need to use remote



            something like this could work:



            const spawn = window.remote.require('child_process')
            const ls = spawn('ls', ['-lh', '/usr'])

            ls.stdout.on('data', (data) =>
            console.log(`stdout: $data`)
            )

            ls.stderr.on('data', (data) =>
            console.log(`stderr: $data`)
            )


            in the above you'd need to attach remote to window:



             <script>
            this.window.remote = require('electron').remote;
            </script>





            share|improve this answer























              Your Answer






              StackExchange.ifUsing("editor", function ()
              StackExchange.using("externalEditor", function ()
              StackExchange.using("snippets", function ()
              StackExchange.snippets.init();
              );
              );
              , "code-snippets");

              StackExchange.ready(function()
              var channelOptions =
              tags: "".split(" "),
              id: "1"
              ;
              initTagRenderer("".split(" "), "".split(" "), channelOptions);

              StackExchange.using("externalEditor", function()
              // Have to fire editor after snippets, if snippets enabled
              if (StackExchange.settings.snippets.snippetsEnabled)
              StackExchange.using("snippets", function()
              createEditor();
              );

              else
              createEditor();

              );

              function createEditor()
              StackExchange.prepareEditor(
              heartbeatType: 'answer',
              autoActivateHeartbeat: false,
              convertImagesToLinks: true,
              noModals: true,
              showLowRepImageUploadWarning: true,
              reputationToPostImages: 10,
              bindNavPrevention: true,
              postfix: "",
              imageUploader:
              brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
              contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
              allowUrls: true
              ,
              onDemand: true,
              discardSelector: ".discard-answer"
              ,immediatelyShowMarkdownHelp:true
              );



              );













              draft saved

              draft discarded


















              StackExchange.ready(
              function ()
              StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55309362%2fexecute-javascript-file-in-child-process-within-electron%23new-answer', 'question_page');

              );

              Post as a guest















              Required, but never shown

























              2 Answers
              2






              active

              oldest

              votes








              2 Answers
              2






              active

              oldest

              votes









              active

              oldest

              votes






              active

              oldest

              votes









              0














              You probably might want to use WebWorkers.



              You can move some of your heavy code to web-workers and keep your main thread non-blocked.



              let win = new BrowserWindow(
              webPreferences:
              nodeIntegrationInWorker: true

              )


              and then



              let worker = new Worker('script.js')


              https://electronjs.org/docs/tutorial/multithreading






              share|improve this answer





























                0














                You probably might want to use WebWorkers.



                You can move some of your heavy code to web-workers and keep your main thread non-blocked.



                let win = new BrowserWindow(
                webPreferences:
                nodeIntegrationInWorker: true

                )


                and then



                let worker = new Worker('script.js')


                https://electronjs.org/docs/tutorial/multithreading






                share|improve this answer



























                  0












                  0








                  0







                  You probably might want to use WebWorkers.



                  You can move some of your heavy code to web-workers and keep your main thread non-blocked.



                  let win = new BrowserWindow(
                  webPreferences:
                  nodeIntegrationInWorker: true

                  )


                  and then



                  let worker = new Worker('script.js')


                  https://electronjs.org/docs/tutorial/multithreading






                  share|improve this answer















                  You probably might want to use WebWorkers.



                  You can move some of your heavy code to web-workers and keep your main thread non-blocked.



                  let win = new BrowserWindow(
                  webPreferences:
                  nodeIntegrationInWorker: true

                  )


                  and then



                  let worker = new Worker('script.js')


                  https://electronjs.org/docs/tutorial/multithreading







                  share|improve this answer














                  share|improve this answer



                  share|improve this answer








                  edited Mar 23 at 0:26

























                  answered Mar 23 at 0:20









                  Erick AkyErick Aky

                  714




                  714























                      0














                      If you are in the Renderer, I believe you need to use remote



                      something like this could work:



                      const spawn = window.remote.require('child_process')
                      const ls = spawn('ls', ['-lh', '/usr'])

                      ls.stdout.on('data', (data) =>
                      console.log(`stdout: $data`)
                      )

                      ls.stderr.on('data', (data) =>
                      console.log(`stderr: $data`)
                      )


                      in the above you'd need to attach remote to window:



                       <script>
                      this.window.remote = require('electron').remote;
                      </script>





                      share|improve this answer



























                        0














                        If you are in the Renderer, I believe you need to use remote



                        something like this could work:



                        const spawn = window.remote.require('child_process')
                        const ls = spawn('ls', ['-lh', '/usr'])

                        ls.stdout.on('data', (data) =>
                        console.log(`stdout: $data`)
                        )

                        ls.stderr.on('data', (data) =>
                        console.log(`stderr: $data`)
                        )


                        in the above you'd need to attach remote to window:



                         <script>
                        this.window.remote = require('electron').remote;
                        </script>





                        share|improve this answer

























                          0












                          0








                          0







                          If you are in the Renderer, I believe you need to use remote



                          something like this could work:



                          const spawn = window.remote.require('child_process')
                          const ls = spawn('ls', ['-lh', '/usr'])

                          ls.stdout.on('data', (data) =>
                          console.log(`stdout: $data`)
                          )

                          ls.stderr.on('data', (data) =>
                          console.log(`stderr: $data`)
                          )


                          in the above you'd need to attach remote to window:



                           <script>
                          this.window.remote = require('electron').remote;
                          </script>





                          share|improve this answer













                          If you are in the Renderer, I believe you need to use remote



                          something like this could work:



                          const spawn = window.remote.require('child_process')
                          const ls = spawn('ls', ['-lh', '/usr'])

                          ls.stdout.on('data', (data) =>
                          console.log(`stdout: $data`)
                          )

                          ls.stderr.on('data', (data) =>
                          console.log(`stderr: $data`)
                          )


                          in the above you'd need to attach remote to window:



                           <script>
                          this.window.remote = require('electron').remote;
                          </script>






                          share|improve this answer












                          share|improve this answer



                          share|improve this answer










                          answered Mar 23 at 3:24









                          scottjustin5000scottjustin5000

                          92369




                          92369



























                              draft saved

                              draft discarded
















































                              Thanks for contributing an answer to Stack Overflow!


                              • Please be sure to answer the question. Provide details and share your research!

                              But avoid …


                              • Asking for help, clarification, or responding to other answers.

                              • Making statements based on opinion; back them up with references or personal experience.

                              To learn more, see our tips on writing great answers.




                              draft saved


                              draft discarded














                              StackExchange.ready(
                              function ()
                              StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55309362%2fexecute-javascript-file-in-child-process-within-electron%23new-answer', 'question_page');

                              );

                              Post as a guest















                              Required, but never shown





















































                              Required, but never shown














                              Required, but never shown












                              Required, but never shown







                              Required, but never shown

































                              Required, but never shown














                              Required, but never shown












                              Required, but never shown







                              Required, but never shown







                              Popular posts from this blog

                              How to preserve electronics (computers, tablets and phones) for hundreds of years Announcing the arrival of Valued Associate #679: Cesar Manara Planned maintenance scheduled April 23, 2019 at 23:30 UTC (7:30pm US/Eastern) The network's official Twitter account is up and running again. What content…How might modern humans leave a message for 50,000 years?How would an aquatic race develop computers?How do we make computers care for human life?Keeping supplies for 1000 yearsWhat will cell phones become in 100 years?What body armor protects against a laser?Could a society attain 1800s technology if limited to using copper and bronze?Electricity power (magic) and electronicsScavenging metal resources in post-apocalypse after 100 yearsWhy would precursors create devices that can survive and still work after hundreds of years?

                              155 수학 과학 기타 둘러보기 메뉴eh추가해eh문서를 완성해

                              Convert JSON to MapSimplest way to convert a string representing JSON array into Java array List of key value pairsHow to take String JSON values into HashMapConvert a JSON String to a HashMapCreating BSON object from JSON stringJSONObject - How to get a value ?Better Map ConstructorReading JSON from Url javaUpdate columns if input values are not null otherwise ignore and keep the existing values of column in databaseHow to store object represented as Json string into Couchbase Lite?Go JSON into MapHow do I efficiently iterate over each entry in a Java Map?Sort a Map<Key, Value> by valuesHow to round a number to n decimal places in JavaCan comments be used in JSON?How do I read / convert an InputStream into a String in Java?How can I pretty-print JSON in a shell script?What is the correct JSON content type?How can I deserialize JSON to a simple Dictionary<string,string> in ASP.NET?Why does Google prepend while(1); to their JSON responses?Parse JSON in JavaScript?