首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法使用角4和Webpack的jQuery插件

无法使用角4和Webpack的jQuery插件
EN

Stack Overflow用户
提问于 2017-10-27 14:47:26
回答 2查看 819关注 0票数 1

我和webpack一起用的是角4,我不能用jQuery插件,有角的cli,它能工作,webpack不能。

我在webpack.config.vendor.js中包含了这个插件

代码语言:javascript
复制
const treeShakableModules = [
   .....
    '@angular/router',
    'zone.js',
    'virtual-keyboard',

如果我检查源页,请在

代码语言:javascript
复制
script src="/dist/vendor.js?v=SsiHzOEk9BPk3CnH6ivS_kkChKmOOxXsB-fFyDO1R8w"></script>

我可以找到js插件代码

在我的.ts代码中

代码语言:javascript
复制
import * as $ from 'jquery';
....
$('#mycontrol').css('background-color', 'red');// I see the change so jQuery works
(<any>$('#mycontrol')).keyboard();

在控制台中,我得到了以下错误:$(.).keyboard不是函数

与角cli一起使用此代码非常简单。

代码语言:javascript
复制
declare var $: any;
 $('#mycontrol').keyboard();

谢谢

EN

回答 2

Stack Overflow用户

发布于 2017-10-27 14:52:34

可以在组件中导入它,如下所示:

代码语言:javascript
复制
import * as $ from 'jquery';

当然,anf在角-cli.json中导入jquery.js。

票数 1
EN

Stack Overflow用户

发布于 2017-10-27 15:07:21

首先,应该添加webpack配置:

代码语言:javascript
复制
 plugins: [

        new HtmlWebpackPlugin({
            template: 'src/index.pt'
        }),


        new webpack.ProvidePlugin({
            jQuery: 'jquery',
            $: 'jquery',
            jquery: 'jquery'
        }),

    ]

在组件中之后,您可以导入它:

代码语言:javascript
复制
import * as $ from 'jquery';

这是一个访问jquery的全局解决方案,然后有几个选项。

当然,不要忘记通过npm安装jquery:

代码语言:javascript
复制
npm i --save jquery 
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46977802

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档