Vue Loader не может разрешить '@' - PullRequest
0 голосов
/ 13 июня 2019

Версия

15.4.0

Ссылка на воспроизведение

https://codepen.io/fendi-tri-cahyono/pen/wbXKMZ?editors=0010

Этапы воспроизведения

ERROR in ./node_modules/vue-extend-layout/vue-extend-layout.vue?vue&type=script&lang=js& (./node_modules/vue-loader/lib??vue-loader-options!./node_modules/vue-extend-layout/vue-extend-layout.vue?vue&type=script&lang=js&)
Module not found: Error: Can't resolve '@' in '/Users/fenditricahyono/Projects/titipbeliin/titipbeliin-vue/node_modules/vue-extend-layout'
 @ ./node_modules/vue-extend-layout/vue-extend-layout.vue?vue&type=script&lang=js& (./node_modules/vue-loader/lib??vue-loader-options!./node_modules/vue-extend-layout/vue-extend-layout.vue?vue&type=script&lang=js&) 50:19-96
 @ ./node_modules/vue-extend-layout/vue-extend-layout.vue?vue&type=script&lang=js&
 @ ./node_modules/vue-extend-layout/vue-extend-layout.vue
 @ ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./src/App.vue?vue&type=script&lang=js&
 @ ./src/App.vue?vue&type=script&lang=js&
 @ ./src/App.vue
 @ ./src/main.js

Что такоеожидается?

может восстановить для импорта что-то из '@ /thing.vue', а не только импортировать что-то из '../../something.vue',

Что на самом деле происходит?

Модуль не найден: Ошибка: невозможно разрешить '@' в '/ Users / fenditricahyono / Проекты / titipbeliin / titipbeliin-vue / node_modules / vue-exte-layout'

1 Ответ

2 голосов
/ 13 июня 2019

Чтобы расширить комментарий Фила, я предполагаю, что вы не инициализировали проект с помощью Vue CLI (судя по конфигурации вашего веб-пакета), то, что вы ищете, должно быть псевдонимом (представлен символом @). который обычно используется и / или создается CLI), который сопоставляется с корневым путем каталога вашего проекта. Поэтому попробуйте добавить следующую дополнительную строку в объект resolve.alias:

{
  // ...

  resolve: {
    alias: {
      // Relative path to your root dir (adjust accordingly)
      '@': path.resolve(__dirname, './src'),

      vue$: 'vue/dist/vue.esm.js',
    },
    extensions: ['*', '.js', '.vue', '.json'],
  },

  // ...
}
...