【问题标题】:backbone.js: Right-hand side of 'instanceof' is not an object骨干.js:“instanceof”的右侧不是对象
【发布时间】:2018-11-11 09:57:03
【问题描述】:

我是 jquery 和骨干网的新手,希望有人可以帮助我解决这个错误。我有一个 Web 应用程序,有时会在控制台中引发此错误

require.js:900 TypeError: Right-hand side of 'instanceof' is not an object
    at child.setElement (backbone.js?__nc__=1527837925799:1040)
    at child._ensureElement (backbone.js?__nc__=1527837925799:1102)
    at child.Backbone.View (backbone.js?__nc__=1527837925799:990)
    at child [as constructor] (backbone.js?__nc__=1527837925799:1545)
    at new child (backbone.js?__nc__=1527837925799:1545)
    at child.initialize (application.js?__nc__=1527837925799:357)
    at child.Inditex.Application (backbone-inditex-1.2.0.js?__nc__=1527837925799:27)
    at new child (backbone.js?__nc__=1527837925799:1545)
    at createApp (main.js:201)
at Object.execCb (require.js:1690)

如果发生此错误,则重新加载网页是固定的(有时需要 3 或 4 次),但我不知道为什么会发生这种情况。

我找到了引发此错误的行。在backbone.js文件中,方法setElement

setElement: function(element, delegate) {
      debugger;
      if (this.$el) this.undelegateEvents();
      this.$el = element instanceof Backbone.$ ? element : Backbone.$(element);
      this.el = this.$el[0];
      if (delegate !== false) this.delegateEvents();
      return this;
    },

有时,Backbone.$ 不是对象,而是发生错误的时候。

¿有解决此错误的方法吗?我正在使用backbone.js 1.1.0

提前致谢

【问题讨论】:

  • 你是在异步加载 jQuery 吗?如果 jQuery 在 Backbone 之后加载,Backbone.$ 可能未定义。
  • 你好 GAntoine。感谢您的答复。我已经检查了 jQuery 是如何加载的,它不是异步加载的。这些是 跨度>
  • 首先,不要直接说这是一个主干错误,这可能是你代码中的一个不好的用途,你可以检查并发布你的 main.js 行 201
  • 您好 Ryad,感谢您的回复。你到底在找什么?在我的 main.js 中,在 201 行附近,代码是这个 App.i18n_string = i18nModule; App.datatablei18n = 数据表I18n;新应用程序({...});

标签: backbone.js instanceof


【解决方案1】:

就我而言,我可以修改我的 main.js。错误是,在某些情况下,在加载 jquery 之前加载了主干。我的main.js是这样的

垫片:{ “下划线”:{ 出口:'_' }, “骨干”:{ deps : ['下划线'], 出口:“骨干” }

我必须在 jquery 的主干中添加一个部门,像这样

垫片:{ “下划线”:{ 出口:'_' }, “骨干”:{ 部门:['jquery','下划线'], 出口:“骨干” }

【讨论】:

    【解决方案2】:

    这个问题的主要原因是backbone.js在jQuery之前加载,所以你需要做的就是确保jQuery在backbone.js之前加载。

    【讨论】:

      猜你喜欢
      • 2023-01-31
      • 1970-01-01
      • 2023-02-14
      • 1970-01-01
      • 2019-11-16
      • 2017-09-16
      • 2017-01-18
      • 1970-01-01
      • 2019-09-17
      相关资源
      最近更新 更多