首页 > 解决方案 > 在 webpack 中包含 jQuery 数据表。在 webpack 上提供插件

问题描述

我目前正在我创建的每个 javascript 文件上导入 jQuery 数据表。

import 'datatables.net/js/jquery.dataTables';
import 'datatables.net-bs4/js/dataTables.bootstrap4';

$('#example').DataTable();

是否有可能使它成为全球性的,我不需要每次都导入它?jQuery 有这种行为,我可以$在不导入的情况下访问每个 javascript。

在我的environment.js 中,我目前有这个:

const {environment} = require('@rails/webpacker');

const webpack = require('webpack');
environment.plugins.append('Provide', new webpack.ProvidePlugin({
  $: 'jquery',
  jQuery: 'jquery',
  Popper: ['popper.js', 'default']
}));

module.exports = environment;

我相信这是全局加载包的文件。是否可以在此处包含数据表?

到目前为止,我已经尝试过:

environment.plugins.append('Provide', new webpack.ProvidePlugin({
  $: 'jquery',
  jQuery: 'jquery',
  Popper: ['popper.js', 'default'],
  DataTable: 'datatables.net'
}));

还有这个:

environment.plugins.append('Provide', new webpack.ProvidePlugin({
  $: 'jquery',
  jQuery: 'jquery',
  Popper: ['popper.js', 'default'],
  DataTable: 'datatables.net/js/jquery.dataTables'
}));

但没有运气。你知道问题可能是什么吗?

标签: javascriptjquerywebpackdatatables

解决方案


我有同样的问题,在这个链接https://datatables.net/forums/discussion/32542/datatables-and-webpack上找到了一些有用的东西,也许你应该使用 dt 而不是 DataTable


推荐阅读