0

我正在尝试将backbone.stickit 与Marionette 一起使用,但不知何故它无法识别stickit 功能。我不断收到错误:

this.stickit() 不是函数

我正在使用Backbone 1.3.3Marionette 2.4.7stickit 0.9.2版本。我已经尝试过 Backbone 和 Marionette 的旧版本和新版本,但它并没有解决问题。我在 onRender 中调用该this.stickit()函数,我也尝试在 onShow 中使用它,但没有运气。我还使用了一个 onDestroy 函数this.unstickit(),它不会给出任何错误。有谁知道是什么导致了这个问题?

import { ItemView } from 'backbone.marionette';
import 'backbone.stickit';
import template from './test.html';

const TestView = ItemView.extend({

  template,

  bindings: {
    '#input-name': 'name',
    '#label-name': 'name'
  },

  onRender() {
    this.stickit();
  },

  onDestroy() {
    this.unstickit();
  }

});

export default TestView;

我已经尝试过早期版本的骨干和木偶,但后来我收到另一个关于未找到“收音机”或其他东西的错误。我希望有人可以帮助我解决this.stickit()不是函数错误。

提前致谢!

4

1 回答 1

0

结果发现 Stickit 安装了最新版本的骨干网。因此安装了 2 个版本的骨干网(1.3.3 和 1.4.0)。这已通过向 package.json 添加分辨率来解决:

"resolutions": {
    "backbone.stickit/backbone":"1.3.3"
  }
于 2019-04-11T14:33:31.747 回答