【问题标题】:Uncaught TypeError: Cannot read property 'version' of undefined at buttons.flash.js when run datatable angular directive未捕获的类型错误:运行数据表角度指令时无法读取 button.flash.js 中未定义的属性“版本”
【发布时间】:2024-01-22 20:19:01
【问题描述】:

我从https://l-lin.github.io/angular-datatables/#/getting-started 安装数据表角度指令

https://l-lin.github.io/angular-datatables/#/extensions/buttons安装数据表按钮扩展

angular.json

"styles": [
              "src/styles.css",
              "node_modules/bootstrap/dist/css/bootstrap.min.css",
              "node_modules/datatables.net-dt/css/jquery.dataTables.css",
              "node_modules/datatables.net-buttons-dt/css/buttons.dataTables.css"
            ],
            "scripts": [
              "node_modules/jquery/dist/jquery.js",
              "node_modules/datatables.net/js/jquery.dataTables.js",
              "node_modules/datatables.net-buttons/js/buttons.colVis.js",
              "node_modules/datatables.net-buttons/js/buttons.flash.js",
              "node_modules/datatables.net-buttons/js/buttons.html5.js",
              "node_modules/datatables.net-buttons/js/buttons.print.js"
            ]
          },

package.json

 "dependencies": {
    "@angular/animations": "6.0.7",
    "@angular/common": "6.0.7",
    "@angular/compiler": "6.0.7",
    "@angular/core": "6.0.7",
    "@angular/forms": "6.0.7",
    "@angular/http": "6.0.7",
    "@angular/platform-browser": "6.0.7",
    "@angular/platform-browser-dynamic": "6.0.7",
    "@angular/platform-server": "6.0.7",
    "@angular/router": "6.0.7",
    "@nguniversal/module-map-ngfactory-loader": "^5.0.0-beta.5",
    "angular-datatables": "^6.0.0",
    "aspnet-prerendering": "^3.0.1",
    "bootstrap": "^3.3.7",
    "core-js": "^2.4.1",
    "datatables.net": "^1.10.19",
    "datatables.net-buttons": "^1.5.3",
    "datatables.net-buttons-dt": "^1.5.3",
    "datatables.net-dt": "^1.10.19",
    "jquery": "^3.3.1",
    "jszip": "^3.1.5",
    "rxjs": "^6.2.1",
    "zone.js": "^0.8.26"
  },

当我运行这个项目然后返回这样的错误:enter image description here

未捕获的类型错误:无法读取 button.flash.js 中未定义的属性“版本”

【问题讨论】:

    标签: button datatable datatables angular6 angular-datatables


    【解决方案1】:

    想通了。按钮的顺序应该是这样的

    https://code.jquery.com/jquery-3.3.1.js
    https://cdn.datatables.net/1.10.19/js/jquery.dataTables.min.js
    https://cdn.datatables.net/buttons/1.5.2/js/dataTables.buttons.min.js // should be loaded first before other plugins
    https://cdn.datatables.net/buttons/1.5.2/js/buttons.flash.min.js
    https://cdnjs.cloudflare.com/ajax/libs/jszip/3.1.3/jszip.min.js  // can be loaded up
    https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.36/pdfmake.min.js
    https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.36/vfs_fonts.js
    https://cdn.datatables.net/buttons/1.5.2/js/buttons.html5.min.js
    https://cdn.datatables.net/buttons/1.5.2/js/buttons.print.min.js
    

    【讨论】:

      最近更新 更多