如何修复Backbone.stickit中的'this.stickit()不是函数'错误

问题描述 投票:0回答:1

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

this.stickit()不是一个函数

我使用的是Backbone 1.3.3,Marionette 2.4.7和stickit 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()不是函数错误。

提前致谢!

backbone.js marionette backbone-stickit
1个回答
0
投票

事实证明,Stickit安装了最新版本的骨干网。因此安装了2个版本的骨干网(1.3.3和1.4.0)。这是通过向package.json添加一个解决方案来解决的:

"resolutions": {
    "backbone.stickit/backbone":"1.3.3"
  }
© www.soinside.com 2019 - 2024. All rights reserved.