Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/402.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Javascript上导入组件是否在每次导入时都需要新的资源?_Javascript_Reactjs - Fatal编程技术网

在Javascript上导入组件是否在每次导入时都需要新的资源?

在Javascript上导入组件是否在每次导入时都需要新的资源?,javascript,reactjs,Javascript,Reactjs,假设我在react中有一个大型模块/组件,如下所示: var musicPlayer = function () { var songList = ['California Girls', 'California Dreaming', 'Hotel California']; function play () { console.log('Im playing the next song!'); } function pause () { console.

假设我在react中有一个大型模块/组件,如下所示:

var musicPlayer = function () {
  var songList = ['California Girls', 'California Dreaming', 'Hotel California'];  

  function play () {
    console.log('Im playing the next song!');
  }

  function pause () {
    console.log('Im paused!');
  }

  //pretend it has like 50 more functions
  //which is not ideal, but the case for the questions
  return {
    playMusic: play,
    pauseMusic: pause,
    showNextTrack: showNextTrack,
    addTrack: addTrackToMusicQueue
  }
}
现在,每次导入此组件时:

import MusicPlayer from "MusicPlayer";
即使该类基本上是静态的,并且不创建实例:

  • 导入和使用类是否需要额外的资源,例如每次导入都需要内存或cpu
  • 它使用相同的内存吗
  • 如果不是新实例,是否有一种方法可以共享导入内存,而不使用额外资源
  • 导入和使用类是否需要额外的资源,例如每次导入都需要内存或cpu

    ES6模块在编译时处理,React框架在开发过程中使用webpack

    它使用相同的内存吗

    如果不是新实例,是否有一种方法可以共享导入内存,而不使用额外资源

    ES6模块确保它与您在其他地方需要的类的实例相同。

    导入和使用类是否需要额外的资源,例如每次导入都需要内存或cpu

    ES6模块在编译时处理,React框架在开发过程中使用webpack

    它使用相同的内存吗

    如果不是新实例,是否有一种方法可以共享导入内存,而不使用额外资源

    ES6模块确保它与您在其他地方需要的类的实例相同。

    关于“因为没有导出MusicLayer函数,所以无法工作”,我给出的上述代码是psuedo代码。这个问题的目的是关于资源利用率,而不是代码准确性。值得注意的是,对于服务器端JavaScript(如node),您已经将es模块传输到CommonJS,
    require
    函数也有一个缓存。如果没有发现您的示例是伪代码,请编辑我的帖子“这不起作用,因为你没有导出MusicLayer函数”,我上面给出的代码是psuedo代码。这个问题的目的是关于资源利用率,而不是代码准确性。值得注意的是,对于服务器端JavaScript(如node)在将es模块传输到CommonJS的地方,
    require
    函数也有一个缓存