Laravel dropzone.js 未使用模板定义

Laravel dropzone.js is undefined with template

我有一个 Laravel 项目,我使用这个模板 :

https://wrappixel.com/demos/admin-templates/monster-admin/main/form-dropzone.html

在我的项目中,我放置了我的 dropzone 表单,它按我想要的方式工作,但我想在上传文件时添加一个成功事件。所以在我的 custom.js 中,我这样做:

require('./bootstrap');
require('../vendor/monster_admin/assets/plugins/dropzone-master/dist/dropzone.js');

$( document ).ready(function() {
  //dropzone.js file upload success
  Dropzone.options.dropzone = {
    init: function() {
      console.log('1');
    }
  };
}); 

但我收到错误消息:Dropzone 未定义。

如果我尝试在模板页面上打开控制台并访问 Dropzone 对象,它可以工作,但在我的页面上不行。

有人知道如何访问 dropzone 对象吗?

如果需要,我的 html 表格:

{!! Form::open(['route' => ['admin.upload', class_basename($model), $model->id], 'method' => 'POST', 'class' => 'form-horizontal dropzone dz-clickable', 'id' => 'dropzone', 'files' => TRUE]) !!}

    <div class="dz-default dz-message"><span>Drop files here to upload</span></div></form>

{!! Form::close() !!}

编辑:

我找到了这个:

 if (typeof module !== "undefined" && module !== null) {
    module.exports = Dropzone;
  } else {
    window.Dropzone = Dropzone;
  }

所以我的项目进入 if 但我想进入 else(不更改模板文件)。有人知道这个模块是什么吗?此处除外未使用。

终于找到解决办法了,这个if

 if (typeof module !== "undefined" && module !== null) {
    module.exports = Dropzone;
  } else {
    window.Dropzone = Dropzone;
  }

在模块中导出 Dropzone,我需要在我的 custom.js 和

中包含(文件顶部而不是 document.ready)这个模块
import * as Dropzone from '../vendor/monster_admin/assets/plugins/dropzone-master/dist/dropzone.js';

这是一个 node.js 的东西(我想是因为我在教程中读到了它,但我从未使用过 node.js)。