Развертывание Laravel — модуль не найден: не удается разрешить ‘Quill’

#javascript #laravel #webpack #laravel-mix

#javascript #laravel #webpack #laravel-mix

Вопрос:

У меня возникли проблемы с развертыванием моего проекта laravel на моем сервере Digital Ocean с использованием Laravel Forge. npm run prod и npm run watch отлично работает на локальном хосте, но когда я развертываю проект в реальном времени, я получаю ошибки при компиляции JS.

/node_modues/quill/ определенно установлен и на сервере.

Вот ошибка:

 ERROR in ./resources/js/user.js 3:15-31
Module not found: Error: Can't resolve 'Quill' in '/home/forge/sieved.co/resources/js'
 

Мой user.js файл:

 require('./quill.js');

window.Quill = require('Quill');

var quill = new Quill('#editor', {
  theme: 'snow'
});
 

Мой quill.js файл также находится в папке ресурсов:

 import Quill from 'quill/core';

import Toolbar from 'quill/modules/toolbar';
import Snow from 'quill/themes/snow';

import Bold from 'quill/formats/bold';
import Italic from 'quill/formats/italic';
import Header from 'quill/formats/header';


Quill.register({
  'modules/toolbar': Toolbar,
  'themes/snow': Snow,
  'formats/bold': Bold,
  'formats/italic': Italic,
  'formats/header': Header
});

export default Quill; 
 

Я не получаю эти ошибки локально, поэтому я не понимаю, что может быть причиной этого на сервере. Спасибо.

Ответ №1:

Вам не хватает зависимости JS, пакета Quill.

Вы можете либо установить его с помощью npm , запустив npm install quill , либо вытащив его из CDN. Подробности см. На домашней странице Quills.

Затем вы можете включить его, используя window.Quill = require('quill'); Пожалуйста, см. Запись в нижнем регистре quill вместо вашего Quill внутри require .

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

1. Спасибо, проблема возникла из-за заглавной буквы Q.

2. Это не отвечает на вопрос @user3479267 о том, почему при локальной разработке верхний регистр Quill работает, а на сервере он должен быть строчным, но это решает проблему, не используя titlecase.