2

假设您有一个 SC.SplitView 来实现主从功能,现在我想让一个开发人员负责定制主件的 SC.ViewList,同时让另一个开发人员负责 SC 的定制和可用性。查看详细信息。

随着页面越来越多,我想知道是否会有一种已知的做法,即如何将文件一分为二,将 SC.View 主子文件放在一个文件中,将 SC.View 细节子文件放在另一个文件中。

有没有人遇到过这种需求?

4

1 回答 1

3

您可以轻松地将视图拆分为多个文件,我们强烈建议您这样做!

主要前提是您将拥有三个视图:

  1. SC.SplitView
  2. 左视图和
  3. 正确的看法

您需要使用sc_require,以便 SplitView 可以找到其他人。这是一个简单的例子:

# Inside my_app/resources/main_page.js

sc_require('views/left_split_panel')
sc_require('views/right_split_panel')

SplitView.extend({
  childViews: ['leftPanel', 'rightPanel'],

  leftPanel: MyApp.LeftSplitPanelView.extend(SC.SplitChild, {
    minimumSize: 200
  }),

  rightPanel: MyApp.RightSplitPanelView.extend(SC.SplitChild, {
    autoResizeStyle: SC.RESIZE_AUTOMATIC
  })
})

然后,其他两个视图:

#inside my_app/views/left_split_panel.js

MyApp.LeftSplitPanelView = SC.View.extend({
  childViews: ['someView anotherView'],

  someView: SC.View.extend(...),
  anotherView: SC.View.extend(...)
})

#inside my_app/views/right_split_panel.js

MyApp.RightSplitPanelView = SC.View.extend({
  childViews: ['dudeView sweetView'],

  dudeView: SC.View.extend(...),
  sweetView: SC.View.extend(...)
})

查看第二个入门指南的“分离视图”部分以获取更多信息,也许还有一个更好的示例(快速说明:几乎相同,但SC.View.design()已被弃用;我们正在更新指南以匹配最佳实践) .SC.View.extend().design()

于 2013-10-23T04:48:27.770 回答