【问题标题】:ERROR TypeError: jquery__WEBPACK_IMPORTED_MODULE_0__(...).show().revolution is not a function错误类型错误:jquery__WEBPACK_IMPORTED_MODULE_0__(...).show().revolution 不是函数
【发布时间】:2021-08-11 10:17:37
【问题描述】:

我正在学习 Angular。我正在尝试将 Revolution Slider 集成到 Angular 11 网站中。我的angular.json 文件的脚本部分如下所示。

"scripts": [
    "node_modules/jquery/dist/jquery.min.js",
    "src/assets/js/bootstrap.min.js",
    "src/assets/js/modernizr.custom.js",
    "src/assets/js/gmaps.js",
    "src/assets/js/jquery.themepunch.revolution.min.js",
    "src/assets/js/jquery.themepunch.tools.min.js",
    "src/assets/js/extensions/revolution.extension.actions.min.js",
    "src/assets/js/extensions/revolution.extension.carousel.min.js",
    "src/assets/js/extensions/revolution.extension.kenburn.min.js",
    "src/assets/js/extensions/revolution.extension.migration.min.js",
    "src/assets/js/extensions/revolution.extension.parallax.min.js",
    "src/assets/js/extensions/revolution.extension.slideanims.min.js",
    "src/assets/js/extensions/revolution.extension.layeranimation.min.js",
    "src/assets/js/extensions/revolution.extension.navigation.min.js",
    "src/assets/js/extensions/revolution.extension.video.min.js",
    "src/assets/js/dlmenu.js",
    "src/assets/js/jquery.magnific-popup.js",
    "src/assets/js/mixer.js",
    "src/assets/js/jquery.easing.1.3.js",
    "src/assets/js/owl.carousel.js",
    "src/assets/js/slick.js",
    "src/assets/js/jquery.appear.js",
    "src/assets/js/theme.js"              
]

我使用下面的代码安装了 jQuery。

npm install jquery --save

我的组件如下所示

rev-slider.component.ts

import { Component, ElementRef, OnInit, AfterViewInit} from '@angular/core';
import * as $ from 'jquery';


@Component({
  selector: 'app-rev-slider',
  templateUrl: './rev-slider.component.html',
  styleUrls: ['./rev-slider.component.css'
    ]
})
  

export class RevSliderComponent implements AfterViewInit {

    constructor(private element: ElementRef) {}

    ngAfterViewInit(): void {

        ($(this.element.nativeElement) as any).show().revolution({
            //more text here
        });
    }
}

我在父组件中添加了这个组件,如下所示

<app-rev-slider></app-rev-slider>

我在控制台中遇到以下错误。

ERROR TypeError: jquery__WEBPACK_IMPORTED_MODULE_0__(...).show().revolution is not a function

【问题讨论】:

  • 你的代码应该做什么?如果这是您的意图,您不需要任何 JQuery 来显示或隐藏 Angular 组件。
  • @Lynx242 感谢您的回复。我正在尝试集成革命滑块。

标签: javascript jquery angular11 revolution-slider


【解决方案1】:

尝试改变

import * as $ from 'jquery';

declare var $;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-04-28
    • 2019-02-14
    • 2021-10-02
    • 2021-10-30
    • 2018-11-22
    • 2017-10-12
    • 2020-06-05
    相关资源
    最近更新 更多