【问题标题】:Uncaught TypeError: (0 , _jquery2.default)(...).sortable is not a function未捕获的 TypeError: (0 , _jquery2.default)(...).sortable 不是函数
【发布时间】:2016-08-09 08:46:46
【问题描述】:

我是 React 新手,现在在我的 file.jsx 中调用可排序方法时遇到问题:

import $ from 'jquery'
...

    $('.myId').sortable( //error when calling sortable//
    {
      .....
    ......
    })
...

我已经放了:

"jquery": "^2.2.3",
 "jquery-ui": "^1.10.5",
 "jquery.ui.widget": "^1.10.3",

到 package.json。所以我认为我的windows环境可以用来玩react。问题是调用$('#myId').sortable() 时出现错误,知道如何解决这些问题吗? 在此先感谢:)

注意: 我试着说:

    <script src="http://code.jquery.com/jquery-1.9.0.js"></script>
    <script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js"></script>
    <script src="http://code.jquery.com/jquery-migrate-1.2.1.js"></script>

到我使用 $('.myId') 的 file.php,但它仍然不起作用..

【问题讨论】:

  • 原因可能是在可排序的 js 之前先尝试加载 jquery 库文件 .. 也尝试不同的版本
  • 建议:如果你是用 React 开发你的应用程序,你真的不需要 jquery。因为 React 和 Jquery 对 DOM 的看法完全不同。
  • Hay @AB Udhay,如何首先加载 jquery lib...???嗯...我想我首先加载了它,因为它捆绑在反应中...
  • Hay @MaheshHaldar,嗯....我真的不知道这种看法,所以我认为如果不使用 jquery 中的可排序,我现在别无选择 :)
  • 你试过不同版本的jquery吗?

标签: javascript jquery jquery-ui reactjs webpack


【解决方案1】:

关于如何在 React 中使用 JQuery,你可以参考这个答案 Jquery in React

但您仍然会遇到与使用第三方 javascript 库相同的错误。

既然是全局变量所以需要window.$('#id').sortable

import $ from 'jquery'
...

window.$('.myId').sortable( //error when calling sortable//
{
  .....
......
})
...

这将解决您的问题,不要忘记使用componentDidMount(){...}

【讨论】:

    猜你喜欢
    • 2019-09-15
    • 2018-11-12
    • 2022-01-18
    • 2018-07-14
    • 1970-01-01
    • 2022-07-09
    • 2021-05-19
    • 2017-01-26
    • 2018-02-10
    相关资源
    最近更新 更多