Как я могу получить мои ошибки JS в Chrome, чтобы показать правильные номера строк? - PullRequest
0 голосов
/ 03 апреля 2019

Я считаю, что мой конфиг веб-пакета может быть виновником или моим npm run dev сценарием, но я не уверен, в чем проблема. Когда я запускаю свое приложение в режиме разработки, я получаю сообщения об ошибках вроде:

Uncaught TypeError: this.props.contacts.map is not a function
    at ContactList.renderList (ContactList.jsx:46)
    at ContactList.render (ContactList.jsx:61)
    at finishClassComponent (react-dom.development.js:14695)
    at updateClassComponent (react-dom.development.js:14650)
    at beginWork (react-dom.development.js:15598)
    at performUnitOfWork (react-dom.development.js:19266)
    at workLoop (react-dom.development.js:19306)
    at HTMLUnknownElement.callCallback (react-dom.development.js:149)
    at Object.invokeGuardedCallbackDev (react-dom.development.js:199)
    at invokeGuardedCallback (react-dom.development.js:256)

Но мой ContactList.jsx всего 36 строк.

Мой конфиг веб-пакета:

module.exports = {
  mode: 'development',
  entry: './client/index.js',
  module: {
    rules: [
      {
        test: /\.(js|jsx)$/,
        exclude: /node_modules/,
        use: {
            loader: 'babel-loader',
            options: { 
              presets: ['@babel/preset-react']
            }
        }
      }
    ]
  },
  resolve: {
    extensions: ['*', '.js', '.jsx']
  },
  output: {
    path: __dirname + '/dist',
    publicPath: '/',
    filename: 'bundle.js'
  },
  devServer: {
    contentBase: './dist'
  }
};

скрипты:

  "scripts": {
    "start": "npx webpack --mode=development && node server/server.js",
    "build": "webpack --mode=development",
    "test": "echo \"Error: no test specified\" && exit 1",
    "dev": "webpack-dev-server --config ./webpack.config.js --mode development"
  }

Еще одной важной деталью, я думаю, является то, что я обслуживаю свое интерфейсное приложение через экспресс-сервер. Это то интерфейсное приложение, которое я пытаюсь отладить. Могу ли я упаковать его в режиме разработки или что-то вроде этого?

Я обслуживаю файлы html и bundle.js. HTML просто ссылается на конечную точку, где я обслуживаю свое приложение реагирования.

index.html:

<!DOCTYPE html>
<html>
  <head>
    <title>The Minimal React Webpack Babel Setup</title>
  </head>
  <body>
    <div id="app"></div>
    <script src="./dist/bundle.js"></script>
  </body>
</html>

Мое приложение здесь:

https://github.com/int-a/contacts/tree/split-first-last-name

1 Ответ

2 голосов
/ 03 апреля 2019

Попробуйте добавить devtool в конфигурацию веб-пакета, например 'devtool: "# source-map"'

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...