DataTables 在为生产构建时不起作用

问题描述 投票:0回答:0

我将 DataTables 与 Vue 和 Vite 一起使用,它使用

npm run dev
可以完美地工作,但是在构建生产环境时
npm run build
,没有使用 DT 的页面有效。它抛出一个错误:

Uncaught (in promise) TypeError: Cannot set properties of undefined (setting 'plugin-init')

编译混淆后的文件通常命名为style-

{random-identifier}
.js,但有时显示为
jquery.dataTables-{random-identifier}.js
.

浏览文件本身,这个块特别是抛出错误:

b(document).on("plugin-init.dt", function(e, r) {
    var a = new ae(r)
      , i = "on-plugin-init"
      , s = "stateSaveParams." + i
      , f = "destroy. " + i;
    a.on(s, function(p, v, m) {
        for (var _ = v.rowIdFn, C = v.aoData, S = [], L = 0; L < C.length; L++)
            C[L]._detailsShow && S.push("#" + _(C[L]._aData));
        m.childRows = S
    }),
    a.on(f, function() {
        a.off(s + " " + f)
    });
    var h = a.state.loaded();
    h && h.childRows && a.rows(b.map(h.childRows, function(p) {
        return p.replace(/:/g, "\\:")
    })).every(function() {
        ue(r, null, "requestChild", [this])
    })
});

这是我如何使用 DT 的示例代码:

<script setup>
import DataTable from 'datatables.net-vue3'
import DataTablesLib from 'datatables.net';

defineProps({
    Invoices: JSON,
});

const columns = [{data: 'id', title: 'No.'}];
</script>


<template>
           <DataTable
             :data="Invoices"
             :columns="columns"
           </DataTable>
</template>

这是

vite.config.js
代码:

import { defineConfig } from 'vite';
import laravel from 'laravel-vite-plugin';
import vue from '@vitejs/plugin-vue'
import tailwindcss from 'tailwindcss';
import { nodePolyfills } from 'vite-plugin-node-polyfills'

export default defineConfig({
    resolve: {
        alias: {
            'ziggy': '/vendor/tightenco/ziggy/src/js',
            'ziggy-vue': '/vendor/tightenco/ziggy/src/js/vue',
        },
    },
    plugins: [
        vue(),
        laravel([
            'resources/css/app.css',
            'resources/js/app.js',
        ]),
        nodePolyfills({
            // Whether to polyfill `node:` protocol imports.
            protocolImports: true,
        }),
    ],
    css: {
        postcss: {
            plugins: [tailwindcss],
        },
    },
    define: { global: "globalThis" }
});

我正在使用 Laragon v6.0 220916 作为服务器,vite v4.0,datatables.net v1.13.4,datatables.net-vue3 v2.0.

是否有任何可用的命令来至少跟踪此类产品构建、预混淆或导致它的原因?

vue.js datatables vite
© www.soinside.com 2019 - 2024. All rights reserved.