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
Reactjs 在react组件中添加react lds导入导致编译失败_Reactjs - Fatal编程技术网

Reactjs 在react组件中添加react lds导入导致编译失败

Reactjs 在react组件中添加react lds导入导致编译失败,reactjs,Reactjs,请参阅导致错误的导入。如果我对这行进行注释,它编译时不会出现任何问题 import React, {Component} from 'react'; import {returnCurrencies} from '../reducers/reducer_currency'; import {DropdownMenu, DropdownMenuList, DropdownMenuListItem} from 'react-lds'; export default class CurrencyDr

请参阅导致错误的导入。如果我对这行进行注释,它编译时不会出现任何问题

import React, {Component} from 'react';
import {returnCurrencies} from '../reducers/reducer_currency';
import {DropdownMenu, DropdownMenuList, DropdownMenuListItem} from 'react-lds';

export default class CurrencyDropDown extends Component
{
   constructor(props)
   {
      super(props);
      //console.log("props",props);
   }
   renderCurrencies(curr)
   {
      //console.log("Curr ", curr);
      return (<option key={curr} value={curr}>{curr}</option>);
   }
   render()
   {
      if(!this.props.currencies)
      {
        return (<div></div>);
      }
      let currencyList = returnCurrencies(this.props.currencies);
       return (<div>
          <select value={this.props.initValue} onChange=
              {this.props.selectCurrency}>
            {currencyList.map(this.renderCurrencies)}
          </select>
        </div>);
 }
}
}

未能编译,出现以下错误

./~/矩时区/data/packed/latest.json中出错 模块分析失败:C:..\XXXX\node\u modules\moment timezone\data\packed\latest.json意外令牌2:10 您可能需要适当的加载程序来处理此文件类型。 SyntaxError:意外标记2:10 在Parser.pp$4.C:..\XXXX\node\u modules\webpack\node\u modules\acorn\dist\acorn.js:2221:15 在Parser.pp.C:..\XXXX\node\u modules\webpack\node\u modules\acorn\dist\acorn.js:603:10 在Parser.pp.C分号处:..\XXXX\node\u modules\webpack\node\u modules\acorn\dist\acorn.js:581:61 在Parser.pp$1.parseExpressionStatement C:..\XXXX\node\u modules\webpack\node\u modules\acorn\dist\acorn.js:966:10 在Parser.pp$1.parse语句C:..\XXXX\node\u modules\webpack\node\u modules\acorn\dist\acorn.js:730:24 在Parser.pp$1.parseBlock C:..\XXXX\node\u modules\webpack\node\u modules\acorn\dist\acorn.js:981:25 在Parser.pp$1.parse语句C:..\XXXX\node\u modules\webpack\node\u modules\acorn\dist\acorn.js:709:33 在Parser.pp$1.parseTopLevel C:..\XXXX\node\u modules\webpack\node\u modules\acorn\dist\acorn.js:638:25 在Parser.parse C:..\XXXX\node\u modules\webpack\node\u modules\acorn\dist\acorn.js:516:17 在Object.parse C:..\XXXX\node\u modules\webpack\node\u modules\acorn\dist\acorn.js:3098:39
@./~/矩时区/index.js 2:15-51

由于无法加载JSON文件,因此失败。您需要配置webpack以加载JSON文件:

安装json加载程序:

并调整您的webpack config loaders部分以使用以下内容:

rules: [
  ...
  {
    test: /\.json$/,
    use: 'json-loader'
  }
  ...
]

鉴于您使用的是webpack v1配置,您可能会觉得有些不同。

如何导入模块?你能展示你的代码而不仅仅是错误信息吗?用代码片段更新在webpack.config.js中做这个更改对我来说很有效。模块:{loaders:[{exclude:/node\u modules/,loader:'babel',query:{presets:['react',es2015',stage-1']},{include://\.json$/,loaders:[json loader]}
npm install --save-dev json-loader
rules: [
  ...
  {
    test: /\.json$/,
    use: 'json-loader'
  }
  ...
]