使用JSPM自定义Kendo-UI构建

时间:2016-02-05 21:10:16

标签: javascript kendo-ui ecmascript-6 jspm

我在Aurelia应用程序中使用KendoUI。到目前为止,我们正在使用网格控件和自动完成控件。

尝试通过ES6导入Kendo对象(使用System.JS和import语句)与Kendo.all.min.js一起运行良好,因为它导出一个Kendo对象全部名称空间。

我从Kendo.all.min.js的导入声明如下:

import * as Kendo from 'kendo';

然后我可以使用类似var datasource = new Kendo.data.dataSource()的内容。 (我已经设置了我的config.js,使用meta部分将'kendo'指向正确的文件。)

Kendo.all.min.js非常庞大,大部分功能都是不必要的。因此,我创建了一个只包含我们正在使用的组件的Kendo.custom.min.js文件。但是,尝试通过ES6导入Kendo不再有效。我不再在导入的对象上收到任何可用的属性。

如何使用ES6导入进行Kendo自定义构建?

1 个答案:

答案 0 :(得分:2)

我找到了答案 - 必须在config.js中指定。

因为Kendo默认是AMD软件包,所以JSPM(和RequireJS等其他加载器)需要知道它导出的内容。我在JSPM配置中有这个:

  meta: {
    "vendor/kendo/kendo.custom.min.js": {
      "deps": [
        "github:components/jquery@2.1.4"
      ],
    }
  },

我必须通过添加一行来改变它:

  meta: {
    "vendor/kendo/kendo.custom.min.js": {
      "deps": [
        "github:components/jquery@2.1.4"
      ],
      "exports": "kendo"
    }
  },

......它确实有效。我现在在导出中看到了Kendo对象。