Попытка запустить приложение React с помощью Tailwind завершается неудачей

#reactjs #tailwind-css

#reactjs #tailwind-css

Вопрос:

Я пытаюсь разработать приложение React с использованием Tailwind, поэтому для этого я выполняю следующие шаги:

 npx create-react-app cinetogo

cd cinetogo

npm i --save-dev autoprefixer postcss-cli tailwindcss

npx tailwind init tailwind.js

Create file 'postcss.config.js' in 'src' and add:

---
const tailwindcss = require('tailwindcss');

module.exports = {
    plugins: [
        tailwindcss('./tailwind.js'),
        require('autofixer')
    ]
}
---

Create directory 'src/css' and file 'tailwind.css' and add:

---
@tailwind base;
@tailwind components;
@tailwind utilities;
---

Edit 'package.json':

---
 "scripts": {
    "start": "npm run watch:css amp;amp; react-scripts start",
    "build": "npm run build:css amp;amp;  react-scripts build",
    "test": "react-scripts test",
    "eject": "react-scripts eject",
    "build:css": "postcss src/css/tailwind.css -o src/css/main.css",
    "watch:css": "postcss src/css/tailwind.css -o src/css/main.css"
  },
---

npm start
  

Это мой postcss.config.js :

 const tailwindcss = require('tailwindcss');

module.exports = {
    plugins: [
        tailwindcss('./tailwind.js'),
        require('autofixer')
    ]
}
  

Это мой tailwind.css :

 @tailwind base;
@tailwind components;
@tailwind utilities;
  

Это мой package,json :

 {
  "name": "cinetogo_frontend",
  "version": "0.1.0",
  "private": true,
  "dependencies": {
    "@testing-library/jest-dom": "^4.2.4",
    "@testing-library/react": "^9.3.2",
    "@testing-library/user-event": "^7.1.2",
    "react": "^16.13.1",
    "react-dom": "^16.13.1",
    "react-scripts": "3.4.3"
  },
  "scripts": {
    "start": "npm run watch:css amp;amp; react-scripts start",
    "build": "npm run build:css amp;amp;  react-scripts build",
    "test": "react-scripts test",
    "eject": "react-scripts eject",
    "build:css": "postcss src/css/tailwind.css -o src/css/main.css",
    "watch:css": "postcss src/css/tailwind.css -o src/css/main.css"
  },
  "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"
    ]
  },
  "devDependencies": {
    "autoprefixer": "^9.8.6",
    "postcss-cli": "^7.1.2",
    "tailwindcss": "^1.8.10"
  }
}
  

Но когда я запускаю npm start , я получаю сообщение об ошибке со следующим журналом:

 0 info it worked if it ends with ok
1 verbose cli [ '/usr/local/bin/node', '/usr/local/bin/npm', 'start' ]
2 info using npm@6.14.8
3 info using node@v10.16.0
4 verbose run-script [ 'prestart', 'start', 'poststart' ]
5 info lifecycle cinetogo_frontend@0.1.0~prestart: cinetogo_frontend@0.1.0
6 info lifecycle cinetogo_frontend@0.1.0~start: cinetogo_frontend@0.1.0
7 verbose lifecycle cinetogo_frontend@0.1.0~start: unsafe-perm in lifecycle true
8 verbose lifecycle cinetogo_frontend@0.1.0~start: PATH: /usr/local/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/Users/hugovillalobos/Documents/Code/cinetogoproject/frontend/cinetogo_frontend/node_modules/.bin:/Library/Frameworks/Python.framework/Versions/3.8/bin:/Users/hugovillalobos/anaconda3/bin:/Library/Frameworks/Python.framework/Versions/3.7/bin:/Library/Frameworks/Python.framework/Versions/3.6/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
9 verbose lifecycle cinetogo_frontend@0.1.0~start: CWD: /Users/hugovillalobos/Documents/Code/cinetogoproject/frontend/cinetogo_frontend
10 silly lifecycle cinetogo_frontend@0.1.0~start: Args: [ '-c', 'npm run watch:css amp;amp; react-scripts start' ]
11 silly lifecycle cinetogo_frontend@0.1.0~start: Returned: code: 1  signal: null
12 info lifecycle cinetogo_frontend@0.1.0~start: Failed to exec start script
13 verbose stack Error: cinetogo_frontend@0.1.0 start: `npm run watch:css amp;amp; react-scripts start`
13 verbose stack Exit status 1
13 verbose stack     at EventEmitter.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/npm-lifecycle/index.js:332:16)
13 verbose stack     at EventEmitter.emit (events.js:198:13)
13 verbose stack     at ChildProcess.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/npm-lifecycle/lib/spawn.js:55:14)
13 verbose stack     at ChildProcess.emit (events.js:198:13)
13 verbose stack     at maybeClose (internal/child_process.js:982:16)
13 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:259:5)
14 verbose pkgid cinetogo_frontend@0.1.0
15 verbose cwd /Users/hugovillalobos/Documents/Code/cinetogoproject/frontend/cinetogo_frontend
16 verbose Darwin 17.7.0
17 verbose argv "/usr/local/bin/node" "/usr/local/bin/npm" "start"
18 verbose node v10.16.0
19 verbose npm  v6.14.8
20 error code ELIFECYCLE
21 error errno 1
22 error cinetogo_frontend@0.1.0 start: `npm run watch:css amp;amp; react-scripts start`
22 error Exit status 1
23 error Failed at the cinetogo_frontend@0.1.0 start script.
23 error This is probably not a problem with npm. There is likely additional logging output above.
24 verbose exit [ 1, true ]
  

Я не знаю, какой шаг я пропускаю.

Комментарии:

1. Возможно, это не полная причина проблемы, но вы должны потребовать autoprefixer вместо autofixer .

2. вы это исправили?

3. @Junaid Я не смог найти источник проблемы, но я начал установку и настройку проекта с нуля, и на этот раз все сработало. Никогда не знал, в чем проблема

Ответ №1:

измените настройки в вашем package.js и используйте эти.

«devDependencies»: { «autoprefixer»: «^ 9.8.6», «postcss-cli»: «^ 7.1.2», «tailwindcss»: «^ 1.8.9» }

удалите установленные в данный момент модули, которые являются autoprefixer, postcss-cli tailwindcss из nod-модулей

также обратите внимание, что в вашем postcss.config.js вам необходимо изменить autofixer на autoprefixer

затем выполните установку npm

В ОСНОВНОМ За ПОСЛЕДНИЕ 24 ЧАСА я ПОНЯЛ, ЧТО версия autoprefixer 10 проигрывается, поэтому я просто отправил ее на виселицу и понизил рейтинг. Надеюсь, это также сработает для вас, приятель