'response' - после запуска npm запуск дает ./src/contentful.js Модуль не найден: не удается разрешить 'contenful' в 'C: \ Users \ .. \ my-blog \ sr c» - PullRequest
0 голосов
/ 20 февраля 2020

Я запустил npm install, получил узлы модулей и пакетов, но когда я запускаю npm start, я получаю эту ошибку:

. / Src / contentful. js
Модуль не найден: Не удалось разрешить «contenful» в 'C: \ Users \ Dannis \ my-blog \ sr c'

Я пытался удалить package-json.lock, запустить npm install и npm start впоследствии и все еще получили тот же блок. (Также пробовал npm update, npm install и npm start, все та же ошибка).

Вот так выглядит мой пакет. json:

{
  "name": "my-blog",
  "version": "0.1.0",
  "private": true,
  "dependencies": {
    "@testing-library/jest-dom": "^4.2.4",
    "@testing-library/react": "^9.4.0",
    "@testing-library/user-event": "^7.2.1",
    "contentful": "^7.13.1",
    "react": "^16.12.0",
    "react-dom": "^16.12.0",
    "react-scripts": "3.4.0",
    "touch": "^3.1.0"
  },
  "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test",
    "eject": "react-scripts eject"
  },
  "eslintConfig": {
    "extends": "react-app"
  },
  "browserslist": {
    "production": [
      ">0.2%",
      "not dead",
      "not op_mini all"
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version"
    ]
  }
}

Я пытался установить response-router-dom, response-markdown и history, и я получаю эту ошибку:

Невозможно прочитать свойство 'match' of undefined.

Есть идеи?

Ответы [ 2 ]

0 голосов
/ 21 февраля 2020

Когда вы запускаете ее в браузере, попробуйте импортировать библиотеку contentful, используя es6 import, вы смешиваете ее с Common js:

import * as contentful from 'contentful';


const client = contentful.createClient({
  space: 'urer2vtwz5u1',
  accessToken: 'H31gCjOrReWAIbKiBWwBCtYF0_iw5kSVjZxh1FyHzNk'
})

const getBlogPosts = () => client.getEntries().then(response => response.items)

const getSinglePost = slug =>
  client
    .getEntries({
      'fields.slug': slug,
      content_type: 'blogPost'
    })
    .then(response => response.items)

export { getBlogPosts, getSinglePost }
0 голосов
/ 20 февраля 2020

@ user8555937 я запустил npm версия получила это:

{ 
'my-blog': '0.1.0', 
npm: '6.13.7', 
ares: '1.15.0', 
brotli: '1.0.7', 
cldr: '35.1', 
http_parser: '2.9.3', 
icu: '64.2', 
llhttp: '2.0.4', 
modules: '72', 
napi: '5', 
nghttp2: '1.40.0', 
node: '12.16.0', 
openssl: '1.1.1d',
tz: '2019c', 
unicode: '12.1', 
uv: '1.34.0', 
v8: '7.8.279.23-node.31', 
zlib: '1.2.11' 
}

@ Код PedroMutter для ./src/contentful.js:

const client = require('contentful').createClient({
  space: 'urer2vtwz5u1',
  accessToken: 'H31gCjOrReWAIbKiBWwBCtYF0_iw5kSVjZxh1FyHzNk'
})

const getBlogPosts = () => client.getEntries().then(response => response.items)

const getSinglePost = slug =>
  client
    .getEntries({
      'fields.slug': slug,
      content_type: 'blogPost'
    })
    .then(response => response.items)

export { getBlogPosts, getSinglePost }

ОБНОВЛЕНИЕ: только что запустил npm обновление, и теперь я получаю:

. / src / contentful. js Строка 1:16: «contentful» не определено no-undef

...