regiomedia / bitrix-project

Заготовка 1C Bitrix проекта: автозагрузка, композер, базовые ООП компоненты, миграции, модели, современный фронтенд стек, инструменты для деплоя.
244 stars 58 forks source link

Error: Cannot find module 'vue-loader/lib/plugin' #17

Closed root-aza closed 1 year ago

root-aza commented 5 years ago

Запускаю сброку проекта npm run dev Лог с ошибкой: https://pastebin.com/5tSfxaPR

greal commented 5 years ago

Нужно очистить кеш и папку node_modules и заново установить все зависимости.

npm cache clean --force
npm install
root-aza commented 5 years ago

Не работает :) Таже самая ошибка.

npm cache clean -f
rm -rf node_modules/ package-lock.json
npm install

Данные о nodejs:

aza@MacBook-Pro delway.zero % npm -v
6.9.0
aza@MacBook-Pro delway.zero % node -v
v10.15.3
vkryukov76 commented 5 years ago

WARNING Webpack Encore requires version ^7.0.1 of sass-loader, but your version (6.0.7) is too old. The related feature will probably not work correctly. WARNING Webpack Encore requires version ^15.0.11 of vue-loader, but your version (13.7.3) is too old. The related feature will probably not work correctly.

вот от этих предупреждений нужно как-то избавляться, например обновить в package.json эти зависимости до нужных версий.

(А мне в свою очередь надо обновить местный фронтенд до актуальных версий)

vkryukov76 commented 5 years ago

Если package.json (в частности версия webpack-encore) не менялся, то все должно устанавливаться и запускаться более-менее корректно.

root-aza commented 5 years ago

Понял,принял. Можно так сделать:

"devDependencies": {
    "@symfony/webpack-encore": "*",
    "autoprefixer": "*",
    "babel-eslint": "*",
    "babel-plugin-syntax-dynamic-import": "*",
    "babel-preset-env": "*",
    "eslint": "*",
    "eslint-config-airbnb-base": "*",
    "eslint-plugin-import": "*",
    "eslint-plugin-vue": "*",
    "node-sass": "*",
    "postcss-loader": "*",
    "sass-loader": "*",
    "stylelint": "*",
    "stylelint-config-sass-guidelines": "*",
    "stylelint-order": "*",
    "stylelint-scss": "*",
    "vue-loader": "*",
    "vue-template-compiler": "*"
  },
  "dependencies": {
    "vue": "*"
  }
root-aza commented 5 years ago

В каком файле,указывать рабочую облать vue? Я про #app

vkryukov76 commented 5 years ago

https://github.com/regiomedia/bitrix-project#vue

root-aza commented 5 years ago

Со стандартным компонентом так же? Я про transition.

vkryukov76 commented 5 years ago

Делаешь свой компонент по инструкции из ридми

А в нем уже применяешь все что тебе нужно.

если взять пример из гайда https://ru.vuejs.org/v2/guide/transitions.html

то получится что-то такое:


// файл /local/assets/scripts/vue/components/DemoApp.vue

<template>
    <div class="demo-app">
        <button v-on:click="show = !show">
            Переключить
        </button>
        <transition name="fade">
          <p v-if="show">привет</p>
        </transition>
    </div>
</template>

<script>
    export default {
      data() {
        return {
          show: true
        };
      },
      props: ['initial'],
    };
</script>