в шаблоне веб-пакета отсутствует парсер - PullRequest
0 голосов
/ 27 мая 2018

Я просто настраивал проект vue, используя шаблон веб-пакета, как указано здесь: http://vuejs -templates.github.io / webpack /

Однако после запуска npm запустите dev просточтобы проверить, что шаблон работает, я получаю эту ошибку:

Failed to compile with 2 errors                                                                                                                                                                                                                                                           21:49:02
 error  in ./src/App.vue

Module build failed: Error: No parser and no file path given, couldn't infer a parser.
    at normalize (path\node_modules\prettier\index.js:7051:13)
    at formatWithCursor (path\node_modules\prettier\index.js:10370:12)
    at path\node_modules\prettier\index.js:31115:15
    at Object.format (path\node_modules\prettier\index.js:31134:12)
    at Object.module.exports (path\node_modules\vue-loader\lib\template-compiler\index.js:80:23)

 @ ./src/App.vue 11:0-354
 @ ./src/main.js
 @ multi (webpack)-dev-server/client?http://localhost:8080 webpack/hot/dev-server ./src/main.js

 error  in ./src/components/HelloWorld.vue

Module build failed: Error: No parser and no file path given, couldn't infer a parser.
    at normalize (path\node_modules\prettier\index.js:7051:13)
    at formatWithCursor (path\node_modules\prettier\index.js:10370:12)
    at path\node_modules\prettier\index.js:31115:15
    at Object.format (path\node_modules\prettier\index.js:31134:12)
    at Object.module.exports (path\node_modules\vue-loader\lib\template-compiler\index.js:80:23)

Что я делаю не так?

Ответы [ 7 ]

0 голосов
/ 28 мая 2018

Если вы используете laravel-mix, это исправило это для меня:

Удалить. \ Node_modules, удалить. \ Yarn.lock, затем добавить следующее в. \ Package.json

"dependencies": {
    ...
    "prettier": "1.12.1",
    "vue-loader": "13.7.0"
    ...
},
"resolutions": {
    "laravel-mix/vue-loader": "13.7.0",
    "vue-loader/prettier": "1.12.1"
}

беги пряжа и все должно работать.

0 голосов
/ 28 мая 2018

исправлено в vue-loader@13.7.2 и vue-loader@14.2.3.Так что просто обновите.

0 голосов
/ 28 мая 2018

Я использую Nuxt / Vue на Docker.Я получил ту же ошибку при сборке Docker.

Она не работает после следующих команд

rm -rf node_modules 
npm install --save-dev prettier@1.12.0
npm run dev

Так что я отредактировал Dockerfile вот так и все заработало.

FROM node:8.11

RUN mkdir -p /app
COPY . /app
WORKDIR /app

RUN npm install && npm cache verify
RUN npm install --save-dev prettier@1.12.0
RUN npm run build

EXPOSE 3000

CMD ["npm", "run", "express"]
0 голосов
/ 28 мая 2018

Если вы используете Yarn, добавьте это к вашему package.json, чтобы заставить @vue/component-compiler-utils использовать правильную версию:

"resolutions": {
  "@vue/component-compiler-utils/prettier": "1.12.1"
}

Затем выполните новую установку.

ссылка

0 голосов
/ 28 мая 2018

Я получил ту же ошибку с пряжей, но попробовал npm i и npm run dev вместо этого, и это сработало.

yarn v v1.5.1 npm -v 5.6.0 node -v v10.0.0

0 голосов
/ 28 мая 2018

Так как vue-cli использует здесь более симпатичный API-интерфейс и жестко закодировал параметры, и в проект была добавлена ​​более симпатичная зависимость @vue/component-compiler-utils.

Вы можете попробовать npm i prettier@~1.12.0, чтобы вызвать здесь более симпатичную версию.

Кстати, кто-то сделал запрос на получение с исправлением

0 голосов
/ 27 мая 2018

Prettier вызвал эту регрессию в их 1.13.0 обновлении, которое произошло сегодня.Вернитесь к предыдущей версии, чтобы исправить эту ошибку:

npm install --save-dev prettier@1.12.0

npm run dev

Тодолжен сделать трюк.

...