Chu*_*utt 10 javascript npm webpack
我相信我已经正确设置了所有内容,但我在Webpack中遇到了一个奇怪的问题.
考虑这个简单的app.ts文件:
'use strict';
import $ = require('jquery');
import 'jquery-ui';
$(function() {
$( "#sortable" ).sortable();
});
Run Code Online (Sandbox Code Playgroud)
一切都编译好,但当网站运行时,它抱怨说Uncaught TypeError: $(...).sortable is not a function.(sortable是一个jQuery UI函数).
当我改为链接到CDN托管版本的jQuery和jQuery UI时,一切正常,但是当我使用JS模块和Webpack时它不起作用.为什么是这样?
为什么jQueryUI函数sortable()无法识别?
Chu*_*utt 17
问题是jQuery UI通常会自动拉入它需要的组件(这就是它通过CDN链接时的工作原理),但是当它作为模块导入时(例如Webpack),它不起作用.
值得庆幸的是,从jQuery UI 1.11开始,您可以手动拉入所需的任何额外组件,如下所示:
'use strict';
import $ = require('jquery');
require('jquery-ui');
require('jquery-ui/ui/widgets/sortable');
require('jquery-ui/ui/disable-selection');
Run Code Online (Sandbox Code Playgroud)
等等
以下是一些官方文档,进一步解释了这一点.
| 归档时间: |
|
| 查看次数: |
6139 次 |
| 最近记录: |