Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/454.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_Redux_Babeljs_Redux Observable - Fatal编程技术网

如何在javascript中导入多个内容

如何在javascript中导入多个内容,javascript,redux,babeljs,redux-observable,Javascript,Redux,Babeljs,Redux Observable,我想在js中导入多个东西,我已经尝试了import*如下: 导出文件AppEpics.js: export fooEpic = Observable.of() // some fancy code; export barEpic = Observable.of() // some other fancy code; 导入文件: import * as App from './AppEpics' export default combineEpics(...App) 我发现当我记录应用程序时,

我想在js中导入多个东西,我已经尝试了
import*
如下:

导出文件AppEpics.js:

export fooEpic = Observable.of() // some fancy code;
export barEpic = Observable.of() // some other fancy code;
导入文件:

import * as App from './AppEpics'
export default combineEpics(...App)
我发现当我记录
应用程序时,我得到了一个包含foo和bar的对象,但当我记录
…应用程序时,我什么也没有得到

我现在正在使用巴别塔预设环境和反应。我该如何解决这个问题

顺便说一句,combineEpics只接受epics,如
fooEpics
,因此我不能像这样调用此函数:

import * as App from './AppEpics'
export default combineEpics(App) // that will not work.
从导入中删除“作为应用程序”:

import * from './App'

它应该可以工作。

在您的情况下,
应用程序
是一个对象,您尝试将其作为函数
组合函数(…应用程序)
的参数进行传播,该函数只有在应用程序是数组时才起作用


如果要将所有导出的值传递到
combineEpics
中,则需要执行smth操作,如
combineEpics(…Object.values(App))
或在App.js中添加
导出默认值[foo,bar]
,并从文件中导入应用程序。

如果要同时导入所有值,还可以使用

import * from './yourName'
如果要将特定组件导入到文件中

import { Comp1, Comp2, Comp3 } from './yourName'
导出组件需要它。你也可以马上做。为此,我在package.json中添加了对文件(index.js)的默认引用

  "name": "yourName",
  "version": "1.0.0",
  "main": "index.js",
在index.js中,我添加了导出

 export { default as Comp1 } from './yourPath/comp1'

为什么不使用
import{foo,bar}from./App'
?App是单个对象,而不是集合。spread操作符被搞糊涂了。应该是
combinepics(App)
combinepics()函数访问
App.foo
App.bar
,因为我会导入很多东西,这会犯很多错误。@RandyCasburn实际上,我现在正在使用redux observable,combinepics是redux observable的函数。这样我就不能修改组合电路了。当然。抱歉。我可以使用此插件传播rest属性:。为什么我不能扩展一个对象的全部属性?你当然可以,但只能扩展到另一个对象中,例如
f={…App}
而不是像在
combineEpics(…App)
中那样扩展到函数调用中,这只适用于数组。但是我如何才能将所有这些foobar添加到combineEpics中呢。看来我还是要手动一个一个的添加。