backbone.js 如何替换Marionette 3上的RegionManager示例

1cosmwyk  于 2022-11-10  发布在  其他
关注(0)|答案(2)|浏览(184)

我目前正在将一个项目从Marionette v2升级到v3,但似乎区域管理器的所有功能都被添加到了View类中。
我的项目有几个

Marionette.RegionManager.extend({
  regions: {
    ...
  }
})

我想知道是否有一种方法可以直接将这样的v2代码转换为v3代码。

y53ybaqx

y53ybaqx1#

我发现区域管理器可以被一个视图代替,作为所有其他视图的根。

var Mn = require('backbone.marionette');
var RootView = require('./views/root');

var App = Mn.Application.extend({
  region: '#root-element',

  onStart: function() {
    this.showView(new RootView()); // Which is your old region manager
  }
});

var myApp = new App();
myApp.start();
wnvonmuf

wnvonmuf2#

3.0 release blog

区域经理

Marionette.RegionManager已被移除。这个公开的类别主要是做为LayoutViewApplication之间的通用类别。
upgrade guide似乎根本没有提到RegionManager
如果你正在寻找一个codemod或其他我不知道的东西。但是有这个marionette-3-补丁向后兼容marionette 2,你可以用它来升级,并逐步手动重写2.x语法或创建工具。

相关问题