Common-Js和Material-UI图标。了解为什么Icon不会加载。 (React Js)

时间:2015-09-20 10:02:51

标签: reactjs commonjs material-ui

我正在尝试运行以下代码:

headline

我已经包含了必要的包,如果我不包含

,代码运行正常
  

Material.Icons.NavigationArrowDropDown;

我已导航到material-ui(0.11.1),并且该文件确实存在于以下路径中作为导出:

lib> svg-icons>导航> Arrow_drop_down.js和源代码如下:

// store original image (it will not be used anymore, so we will delete that later)
$myImage->saveAs($imageTempPath);

// save new imagine thumb
Image::thumbnail($imageTempPath, 120, 120)
    ->save(Yii::getAlias('uploads/test-photo.jpg'), ['quality' => 80]);

// delete original image...

然而,在编译和运行应用程序时,它无法找到该项并抱怨它不存在,而另一项

  

Material.Icons.NavigationChevronLeft

找到没有问题的找到。这个文件(除了我的路由器和app.js)是我的整个项目。

由于两个文件都存在于同一个文件夹中,我无法理解为什么找到一个引用而另一个不是?

错误发生在运行时,jsLint不会捡起它。此外,删除listItem图标时,我的页面正确呈现。问题似乎与此组件直接相关。

附加说明:我删除了var下拉列表,仅用于演示如何从Material UI中找不到导出。

tl; dr:材料UI图标类与另一个图标类在同一文件夹中未被拾取。为什么呢?

1 个答案:

答案 0 :(得分:1)

正如您在src/index.js中看到的那样,NavigationArrowDropDown未设置Material.Icons,而NavigationChevronLeft则设置material-ui。该组件在other places中使用,但绝不会通过var NavigationArrowDropDown = require('material-ui/lib/svg-icons/navigation/arrow-drop-down'); 的主要导出公开。

但是,您仍然可以像对待任何其他文件一样要求它:

   header("Access-Control-Allow-Origin: *");

查看README,看起来这是推荐使用单个组件的方法。