У меня есть пустой проект Laravel, и я пытаюсь установить vodal. (https://github.com/chenjiahan/водал) в него, но безуспешно.
Я знаю основы vue.js, но я все еще новичок и никогда раньше не использовал пакет Vue.js в своем приложении Laravel.
Note: I was able to download https://github.com/chenjiahan/vodal and get it running as a standalone. The challenge is getting it integrated into a new Laravel 5.8 project.
После запуска:
npm i -S vodal
Где этот код находится в моем приложении laravel? Что должно войти:
Как мне заставить этот пакет Vodal (или, если уж на то пошло, любой vue.js) работать с Laravel? Я боролся в течение нескольких часов подряд, и ЛЮБАЯ помощь будет оценена по достоинству.
<vodal :show = "show" animation = "rotate" @hide = "show = false">
<div>A vue modal with animations.</div>
</vodal>
import Vue from 'vue';
import Vodal from 'vodal';
Vue.component(Vodal.name, Vodal);
export default {
name: 'app',
data() {
return {
show: false
}
}
}
// include animation styles
@import "vodal/common.css";
@import "vodal/rotate.css";






В laravel сначала откройте терминал и установите npm с помощью команды npm install, после чего вы увидите новую папку в вашем проекте с именем node_modules. весь код ваших пакетов находится внутри этой папки.
Теперь просто запустите команду для водыла, например npm i -S vodal
теперь вы можете просто импортировать этот пакет в свой файл app.js, как вы это делали.
Запустите npm run watch для режима разработки, который импортирует весь код воды из папки node_modules в ваш файл app.js, который находится в вашем общедоступном каталоге.
Обновлять
Я увидел ваш репозиторий, скачал его и отредактировал некоторые ваши файлы. ты поступил совершенно неправильно. Я предлагаю вам сначала изучить vuejs, а не углубляться в него.
проблема была в том, что вы вызывали это в vue, а не в компоненте vue, поэтому почему вы даете следующий код.
export default {
components: {
Vodal
},
data() {
return {
show: false
}
}
}
мы делаем это в компоненте vue, а не в vue.
в data возвращаем только в vue component и официальную документацию vodal, там же дают пример использования в vue component.
и вы не используете его в компоненте vue, поэтому просто сделали это в vue, как показано ниже
const app = new Vue({
el: '#app',
data:{
show: false
}
});
Итак, теперь ваш CSS.
поэтому для включения css. я просто импортирую это в файл app.scss, как показано ниже.
@import "~vodal/common.css";
@import "~vodal/rotate.css";
теперь заключительная часть и ваша самая большая ошибка. почему вы не включаете файл app.js в файл welcome.blade. Весь ваш код написан в файле app.js, и вы его не включаете. поэтому я просто включаю его в файл welcome.blade, как показано ниже.
<script src = "{{ asset('js/app.js') }}" defer></script>
<link rel = "stylesheet" href = "{{ asset('css/app.css') }}">
в конце концов, просто беги npm run watch
так что теперь основная часть вам нужна show:true для показа модального окна. по умолчанию false, поэтому он не покажет вам.
Я делаю событие клика для шоу, чтобы вы понимали, как это все будет работать. и плохо делиться файлами со ссылкой в комментарии.
это будет работать с laravel. ты бежал npm run dev Или npm run watch
Я до сих пор не смог заставить это работать. Между прочим, я смотрел видео, связанные с компонентами, на laracasts.com/series/learn-vue-2 шаг за шагом Вот мой общедоступный репозиторий с двумя коммитами того, что я пробовал: gitlab.com/connecteev/laravel_vodal_test Я запустил это в Терминале 1: npm i -S vodal npm install npm run watch I запустил это в Терминале 2: php artisan serve Затем открыл браузер, чтобы перейти к 127.0.0.1:8000 Не повезло. Я вижу только prnt.sc/npion4 Что я упускаю?
я видел ваш репозиторий панджаби. как я уже сказал, импортируйте его, но импортируйте сверху
Я загружаю ваш репозиторий и редактирую некоторые файлы, все работает нормально. см. мой обновленный ответ для этого
Вот zip-ссылка на папку ресурсов Transfernow.net/413mv4c1tqir, скачайте и импортируйте ее.
Спасибо! Это решило проблему. если вы ищете внештатную работу, пожалуйста, свяжитесь со мной kunalspunjabi [at] gmail.com
Я сделал именно это, и это не работает. Однако пакет vodal работает в автономном режиме... вопрос в том, как заставить такой пакет работать в Laravel?