Rails Webpacker реагирует на MissingEntryError

Я пытаюсь настроить свой новый проект с помощью Rails 5.1 и Wepacker-react, но очень быстро получаю первую ошибку. Я создал новый компонент в javascript/packs. Код простой:

javascript/packs/home.jsx

import React from 'react'
import ReactDOM from 'react-dom'
import PropTypes from 'prop-types'

const Home = props => (
  <div>Hello {props.name}!</div>
)

Home.defaultProps = {
  name: ''
}

Home.propTypes = {
  name: PropTypes.string
}

document.addEventListener('DOMContentLoaded', () => {
  ReactDOM.render(
    <Home name="Daniel" />,
    document.body.appendChild(document.createElement('div')),
  )
})

Я отображаю этот компонент в индексном представлении:

index.html.erb

<%= javascript_pack_tag 'home' %>

Но я получил эту ошибку: MissingEntryError

Я хотел бы добавить, что я импортировал этот компонент в приложение....js Чего не хватает?


person Daniel    schedule 24.10.2017    source источник
comment
Он просматривает ваш файл manifest.json, чтобы определить, что он может загрузить с помощью javascript_pack_tag. Как выглядит ваш manifest.json?   -  person AndrewKS    schedule 13.11.2017


Ответы (1)


У меня была аналогичная ошибка, когда я получал то же сообщение об ошибке.

Другое сообщение об ошибке, связанное с MissingEntryError, было следующим:

Webpacker не может найти react_file.js в /home/.../Workspaces/my-app/public/packs/manifest.json

Файл manifest.json не был создан.

Проблема была решена после того, как я добавил несколько пропущенных пакетов NPM, таких как Webpack-dev-server и @rails/webpacker. Все эти пропущенные пакеты были частью папки node_modules. Мне просто нужно было установить их, чтобы решить проблему.

person Pedro Gabriel Lima    schedule 08.01.2018