我正在尝试打开引导模式,但它在全日历角度 2 中不起作用。
dayClick: function(date, jsEvent, view) {
(<any>$('#myModal33')).modal('show');
$('#click_date').val(date._d);
}
我得到:
WEBPACK_IMPORTED_MODULE_5_jquery(...模态不是一个函数
如果我删除这个import * as $ from 'jquery';
那么模态就可以工作了,但我也需要jQuery。
只需更改:
import * as $ from 'jquery';
如:
import * as $AB from 'jquery';
这解决了我的问题。 现在它的工作就像 vroom vroom....嘻嘻.....
我认为这个问题已经得到了回答。在 webpack 中管理 jQuery 插件依赖关系。
使用 ProvidePlugin 注入隐式全局变量
大多数遗留模块依赖于特定全局变量的存在,就像 jQuery 插件在 $ 或 jQuery 上所做的那样。在这种情况下,您可以配置 webpack,以便在每次遇到全局 $ 标识符时预置 var $ = require("jquery")。
可能需要 custom.typings.d.ts 来防止打字稿错误。
您可以安装"@types/jquery",但可能不需要此文件。
declare var $: any;
webpack.config.js
var webpack = require("webpack");
...
plugins: [
new webpack.ProvidePlugin({
$: "jquery",
jQuery: "jquery"
})
]
接受的答案确实有效,但这是我的想法,为什么$AB
有效,但$
无效。
在@types/jquery
页面中,它说包包含全局值$, Symbol and jQuery
。在这种情况下,您需要从包中导入所有内容,但不能覆盖三个变量本身。
因此,只需将以下行添加到您的app.module.ts
中,您就可以在整个应用程序中使用 $
标记。
import * as AnythingThatIsNotDollarSignOrSymbolOrjQuery from "jquery"