импортировать экспресс из «экспресс»; SyntaxError: Неожиданный идентификатор

Я делаю скрипт с помощью учебника, но когда я пытаюсь запустить index.js через nodemon run index.js, я получаю синтаксическую ошибку, указывающую на импорт экспресс из «экспресс»; .

У меня установлен nodemon, для bd у меня также запущены mongo и mongod. Учебник может быть устаревшим или что-то установлено/запущено без предупреждения.

Мой index.js

import express from 'express';
import dbConfig from './config/db';
const app = express();
dbConfig();
const PORT = process.env.PORT || 3000;
app.listen(PORT, err => {
  if (err) {
    console.error(err);
  }{
    console.log('App listen to port: ${PORT}');
  }
});

пакет.json:

{
  "name": "meetup-backend",
  "version": "0.0.1",
  "main": "index.js",
  "scripts": {
    "dev": "NODE_ENV=development nodemon dist/index.js",
    "build:watch": "babel -w --out-dir=dist ./src",
    "clean": "rimraf dist",
    "lint": "eslint src",
    "lint:fix": "eslint --fix src"
  },
  "repository": {},
  "author": "Emanuel Quimper",
  "license": "MIT",
  "dependencies": {
    "axios": "^0.16.1",
    "babel-polyfill": "^6.26.0",
    "babel-preset-es2015": "^6.24.1",
    "babel-preset-stage-2": "^6.24.1",
    "babel-register": "^6.26.0",
    "body-parser": "^1.18.3",
    "detect-port": "^1.3.0",
    "es6": "0.0.7",
    "express": "^4.16.4",
    "jsonwebtoken": "^7.3.0",
    "mongoose": "4.7.7",
    "morgan": "^1.9.1",
    "passport": "^0.3.2",
    "passport-jwt": "^2.2.1"
  },
  "devDependencies": {
    "babel-cli": "^6.26.0",
    "babel-plugin-transform-object-rest-spread": "^6.23.0",
    "babel-preset-env": "^1.7.0",
    "eslint": "^3.19.0",
    "eslint-config-equimper": "^1.6.2",
    "nodemon": "^1.18.10",
    "rimraf": "^2.6.1"
  }
}

Когда я запускаю nodemon index.js, я получаю:

 nodemon index.js
[nodemon] 1.18.10
[nodemon] to restart at any time, enter `rs`
[nodemon] watching: *.*
[nodemon] starting `node index.js`
/Users/ari-mikkopenttila/Documents/GitHub/youtubeMeetupAppReactNativeNode/meetup-backend/src/index.js:3
import express from 'express';
       ^^^^^^^

SyntaxError: Unexpected identifier
    at new Script (vm.js:79:7)
    at createScript (vm.js:251:10)
    at Object.runInThisContext (vm.js:303:10)
    at Module._compile (internal/modules/cjs/loader.js:657:28)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)
    at Module.load (internal/modules/cjs/loader.js:599:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
    at Function.Module._load (internal/modules/cjs/loader.js:530:3)
    at Function.Module.runMain (internal/modules/cjs/loader.js:742:12)
    at startup (internal/bootstrap/node.js:283:19)
[nodemon] app crashed - waiting for file changes before starting...

Я просто не могу найти, что вызывает ошибку и как ее исправить. Нужна помощь/совет и извинения, если проблему легко решить.


person Ari    schedule 12.02.2019    source источник
comment
Посмотрите stackoverflow.com/questions/45854169/   -  person Leo    schedule 12.02.2019
comment
Кстати, @YvetteColomb, я отредактировал свой ответ, чтобы он лучше соответствовал вопросу, прежде чем вы его удалили. (Хотя я понимаю, почему вы это сделали)   -  person Seblor    schedule 12.02.2019
comment
Вы должны транспилировать свой код с помощью babel раньше. Запустите npm run build:watch, затем npm run dev в разных терминалах.   -  person Marvin Fischer    schedule 12.02.2019
comment
Спасибо @MarvinFischer, у меня все получилось!   -  person Ari    schedule 12.02.2019
comment
Я исправил ту же ошибку (в моем случае nodemon) мой узел обновления до последней версии (мой был действительно старым)   -  person Gerry    schedule 24.12.2019
comment
Большое спасибо @Gerry! Я провел весь 2020 год в заключении, разрабатывая на своем личном, современном ноутбуке, и не заметил, что на моем рабочем ПК был установлен Node 6 ... вы только что спасли мой день. Я также использовал nodemon и получил это точное сообщение об ошибке --> обновление Node исправило это.   -  person DixiPoowa    schedule 16.07.2020