【问题标题】:Knockout and jquery-ui\sortable Requirejs Configuration using CDNKnockout 和 jquery-ui\sortable Requirejs 配置使用 CDN
【发布时间】:2016-09-05 23:21:48
【问题描述】:

我正在尝试使用 requirejs 加载很多我们的 JS 依赖项。我们遇到了 KnockoutSortable 对 jquery-ui\sortable 的依赖性的问题。

我无法从 jquery-ui 的 cdn 下载中获取 sortable.js,它通过从我的站点中的副本下载来满足它的依赖关系。我已经尝试过

'knockoutSortable' : {
    deps: ['jqueryUi']
},

但这并没有强制 Knockout 使用 jquery-ui 的 CDN 下载版本

我们的配置如下:

var require = {
baseUrl: '/Scripts',
paths: {
    jquery: ['//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min', 'lib/jquery-1.9.1.min'],
    jqueryUi: ['//ajax.googleapis.com/ajax/libs/jqueryui/1.11.3/jquery-ui.min', 'lib/jquery-ui-1.11.3.min'],        
    knockout: ['//cdnjs.cloudflare.com/ajax/libs/knockout/3.3.0/knockout-min','lib/knockout-3.3.0.min'],
    knockoutMapping: ['//cdnjs.cloudflare.com/ajax/libs/knockout.mapping/2.4.1/knockout.mapping.min','lib/knockout.mapping-latest.min'],
    knockoutValidation: ['//cdnjs.cloudflare.com/ajax/libs/knockout-validation/2.0.2/knockout.validation.min','lib/knockout.validation.min'],
    knockoutPostBox: ['//cdnjs.cloudflare.com/ajax/libs/knockout-postbox/0.5.1/knockout-postbox.min', 'lib/knockout-postbox.min'],
    knockoutSortable: ['//cdnjs.cloudflare.com/ajax/libs/knockout-sortable/0.11.0/knockout-sortable.min','lib/knockout-sortable.min'],
    ...
shim: {
    'jquery': {
        exports: '$'
    },
    'knockoutSortable' : {
    deps: ['jqueryUi']
},...

【问题讨论】:

  • 由于 jquery-ui 和淘汰赛都与 AMD 兼容,您不能使用 shim 配置,您需要使用地图配置。见link

标签: jquery-ui knockout.js requirejs cdn


【解决方案1】:

由于 jquery-ui 和淘汰赛都与 AMD 兼容,因此您不能使用 shim 配置,您需要使用映射配置来将 jquery-ui 模块映射回 jqueryUi 路径。

link

我们通过将此地图配置添加到 require.config 来解决此问题

map : {
    '*': {
        'jquery-ui/core': 'jqueryUi',
        'jquery-ui/sortable': 'jqueryUi',
        'jquery-ui/draggable': 'jqueryUi',
        'jquery-ui/mouse': 'jqueryUi',
        'jquery-ui/widget': 'jqueryUi'
    }
}

【讨论】:

    猜你喜欢
    • 2011-07-26
    • 1970-01-01
    • 2013-03-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多