通过npm

时间:2017-03-01 08:53:01

标签: javascript reactjs

我有一个名为checkbox.js的文件,其中包含以下内容

import 'icheck/skins/all.css'
import react_icheck from 'react-icheck'

export default react_icheck

为什么我这样做是因为我想减少一行导入'icheck / skins / all.css'放在我的模块中。例如我有3个模块:1。产品,产品细节和设置,所有都使用icheck,我想避免在3个不同的地方导入'icheck / skins / all.css'。这就是为什么我有一个名为checkbox.js的包装器组件。但我有这个错误

./resources/assets/app/module/product.js
95:24-32 "export 'Checkbox' was not found in './common/Checkbox'

当我做的时候

import { Checkbox, Radio } from './common/checkbox';

在我的模块中。

如果可能的话,如果我发现了另一个有用的组件(例如下拉列表),我也想放入dropdown.js,这样它就像我自己的全局组件一样。但首先我怎样才能解决上述问题?

2 个答案:

答案 0 :(得分:0)

那是因为您使用导出默认值,但您必须使用导出 像这样:

import 'icheck/skins/all.css'
import {* as react_icheck} from 'react-icheck'

export {...react_icheck}

答案 1 :(得分:0)

在0.12之后反应,我们将开始转向ES6课程。如果您使用ES6转换器,您将能够声明您的组件:

class MyComponent {
  render() {
    return(

    );
  }
};
export {MyComponent};

或者像这样:

export class MyComponent {
  render() {
    ...
  }
};