我在使用Laravel Mix和DataTables时遇到了困难。 我遇到的问题是,当我编译我的.js文件等时,每次访问执行jQuery数据表的页面时,都会抛出以下错误:
错误是:
jQuery.Deferred exception: $(...).DataTable is not a function TypeError: $(...).DataTable is not a function
Uncaught TypeError: $(...).DataTable is not a function
据我所知,$(...).DataTable
不是全局变量,但是如何确保它可以在全局范围内(或在我的应用程序内)访问?
以下是我的设置:
app.js
import jquery from 'jquery/dist/jquery.slim'
import 'bootstrap-sass'
import 'datatables.net';
import dt from 'datatables.net-bs';
window.$ = window.jQuery = jquery;
webpack.mix.js
mix
.js('resources/assets/admin/js/app.js', 'js/')
.extract([
'jquery', 'bootstrap-sass', 'datatables.net', 'datatables.net-bs'
])
.autoload({
jquery: ['$', 'window.jQuery', 'jQuery', 'jquery'],
DataTable : 'datatables.net-bs'
})
非常感谢您的任何想法。
var $ = require( 'jquery' ); require( 'datatables.net-bs' )( window, $ )
- ljubadrvar $ = require( 'jquery' ); require( 'datatables.net' )( window, $ );
- ljubadrimport $ from 'jquery';
- ljubadrimport $ from 'jquery-slim'
。我错过了那个slim版本。 - ljubadr