не получается извлечь данные с data.js

скорее всего неправильно указываю путь, но где ошибка не могу разобраться

class Table extends Component {
  state = {
    currency: this.props.data.currencies[0].name,
    value: 0,
    id: this.props.data.currencies.id,
    mesurSyst: ""
  };
  onChange = ({
    target: {
      value,
      dataset: { currency }
    }
  }) => {
    this.setState({
      currency,
      value
    });
  };

https://codesandbox.io/s/angry-tdd-3nttmd?file=/src/table.jsx


Ответы (1 шт):

Автор решения: Maxim
  1. В файле data.js у Вас отсутствовал export.
  2. В файле index.js Вы пропсами в компонент Table передаете currencies={data.currencies} а в компоненте вы пытаетесь записать в
currency: this.props.data.currencies[0].name

Хотя у вас там нет this.props.data а есть this.props.currencies в котором лежит data.currencies равное

[
    { name: "meters", rate: 1, id: 1, mesurSyst: "met" },
    { name: "centimeters", rate: 100, id: 2, mesurSyst: "met" },
    { name: "inches", rate: 39.37, id: 3, mesurSyst: "imp" },
    { name: "foots", rate: 3.28, id: 4, mesurSyst: "imp" }
]

Записывайте в state

state = {
    currency: this.props.currencies[0].name,
    value: 0,
    id: this.props.currencies[0].id,
    mesurSyst: ""
  };

И далее по коду в методах исправьте

Ваш пример исправленный

→ Ссылка