【问题标题】:#jquery dialog is not a function#jquery 对话框不是函数
【发布时间】:2021-09-11 19:40:57
【问题描述】:

按照此处的指示:Jquery dialog dialog is not a function

我在我的 Electron-React-Typescript-Webpack 应用程序中导入并使用了 jQuery,如下所示:

import jQuery from 'jquery';

let jj = jQuery.noConflict();


  jj(document).ready(function () {
    jj('#new-contact').click(function (ev) {
        jj('#contact_dialog').dialog('open');
    });
  });

但我仍然收到错误:TypeError: jj(...).dialog is not a function

  • @types/jquery:^3.5.5
  • @types/jqueryui: 1.12.15
  • jquery: ^3.6.0
  • 节点:v14.17.0
  • webpack: ^5.23.0

如何解决问题?

【问题讨论】:

  • 你导入jQueryUI了吗?
  • 你好像没有导入JQuery UI
  • 看起来你导入了 jquery 两次。使用 3.6.0 after jquery ui 1.12.15。只包含一次,然后先制作。再次导入将覆盖所有插件(即删除 jqueryui)
  • 是的。该帖子顶部有<script src="js/jquery-ui.js"></script>,因此您需要导入jquery-ui,但是您应该使用ES6 + import 语句来完成
  • 大家好!非常感谢您的帮助。我安装了 jquery-ui: ^1.12.1 并导入为import jqueryui from 'jquery-ui'; 我还需要做其他事情吗?

标签: javascript jquery node.js


【解决方案1】:

我解决了以下两个迹象:

How to use jQuery UI with React JS

jquery ui Dialog: cannot call methods on dialog prior to initialization.

import jQuery from 'jquery';
//import 'jquery-ui';
import 'jquery-ui-bundle';
import 'jquery-ui-bundle/jquery-ui.min.css'
let jj = jQuery.noConflict();

  jj(document).ready(function () {

    jj('#new-contact').click(function (ev) {
        jj('#contact_dialog').dialog().dialog('open');
    });
  });

谢谢你们的好意。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-10
    • 1970-01-01
    • 1970-01-01
    • 2012-12-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多