这是使收藏下拉菜单工作的完整配置:
我正在使用 symfony webpack:
在js文件中:
import "./styles/datatables.scss";
const $ = require("jquery");
const routes = require("../public/js/fos_js_routes.json");
import Routing from "../vendor/friendsofsymfony/jsrouting-bundle/Resources/public/js/router.min.js";
require("@fortawesome/fontawesome-free/css/all.min.css");
require("@fortawesome/fontawesome-free/js/all.js");
Routing.setRoutingData(routes);
// this "modifies" the jquery module: adding behavior to it
// the bootstrap module doesn't export/return anything
require("bootstrap");
require("bootstrap/js/dist/tooltip");
window.jQuery = window.$ = require("jquery");
require("datatables.net");
require("datatables.net-dt");
require("datatables.net-bs5");
require("jszip");
require("pdfmake");
require("datatables.net-buttons-bs5");
require("datatables.net-buttons/js/buttons.colVis.js");
require("datatables.net-buttons/js/buttons.html5.js");
require("datatables.net-buttons/js/buttons.print.js");
require("datatables.net-scroller-bs5");
require("datatables.net-select-bs5");
import pdfMake from "pdfmake/build/pdfmake";
import pdfFonts from "pdfmake/build/vfs_fonts";
pdfMake.vfs = pdfFonts.pdfMake.vfs;
$(document).ready(function () {
var startupsDt = null;
var managersDt = null;
var promosDt = null;
var domainsDt = null;
var datatableSettings = {
select: {
style: "multi",
selector: "td:first-child",
},
dom: "Bfrtip",
buttons: {
buttons: [
{
extend: "collection",
text: "Export",
buttons: [
{ extend: "csv" },
{ extend: "excel" },
{
extend: "pdfHtml5",
orientation: "landscape",
pageSize: "A0",
title: "Users List PDF",
exportOptions: {
modifier: {
page: "current",
},
},
},
],
},
/* {
extend: "copy",
className: "btn btn-primary glyphicon glyphicon-duplicate",
}, */
],
// dom: {
// button: {
// tag: "button",
// className: "btn-primary mx-2 my-2 align-middle btn-sm ",
// },
// buttonLiner: {
// tag: "null",
// },
// },
},
responsive: true,
ordering: false,
pageLength: 10,
paginate: true,
lengthChange: false,
searching: false,
processing: true,
serverSide: true,
bAutoWidth: false,
sAjaxDataProp: "data",
oLanguage: {
sProcessing:
'<div class="d-flex justify-content-center py-2"><i class="fa fa-spinner fa-2x" aria-hidden="true"></i></div>\n',
sSearch: "Rechercher",
sLengthMenu: "Afficher _MENU_ éléments",
sInfo:
'<div class="alert alert-dark" role="alert"> Affichage des élements <span class="badge badge-info"> _START_ </span> à <span class="badge badge-info"> _END_ </span> sur <span class="badge badge-info"> _TOTAL_ </span> éléments </div>',
sInfoEmpty:
"Affichage des élements 0 à 0 sur 0 éléments",
sInfoFiltered: "(filtré de _MAX_ éléments au total)",
sInfoPostFix: "",
sLoadingRecords: '<i class="fa fa-spinner" aria-hidden="true"></i>\n',
sZeroRecords: "Aucun élément à afficher",
sEmptyTable: "Aucune donnée disponible dans le tableau",
oPaginate: {
sFirst: "Premier",
sPrevious: "Précédent",
sNext: "Suivant",
sLast: "Dernier",
},
oAria: {
sSortAscending: ": activer pour trier la colonne par ordre croissant",
sSortDescending:
": activer pour trier la colonne par ordre décroissant",
},
},
columns: null,
ajax: null,
};
在 sass 或 css 文件中不要忘记添加:
@import "~bootstrap/scss/bootstrap";
@import "~datatables.net-bs5/css/dataTables.bootstrap5.min.css";
@import "~datatables.net-buttons-bs5/css/buttons.bootstrap5.min.css";
终于找到了: