假设您有一个 SC.SplitView 来实现主从功能,现在我希望有一名开发人员负责定制主件的 SC.ViewList,同时让另一名开发人员负责定制和可用性详细信息的 SC.View。
随着页面越来越大,我想知道是否有一种已知的做法如何将文件分成两个,将 SC.View 主子文件放在一个文件中,将 SC.View 详细子文件放在另一个文件中.
有人遇到过这种需求吗?
最佳答案
您可以轻松地将 View 拆分为多个文件,我们强烈鼓励这样做!
主要前提是您将拥有三个 View :
- SC.SplitView
- 左 View ,以及
- 正确的观点
您需要使用 sc_require
以便 SplitView 可以找到其他 View 。这是一个简单的示例:
# 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
})
})
然后,另外两个 View :
#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(...)
})
查看第二个 Getting Started guide 的“分离 View ”部分有关更多信息,也许还有一个更好的示例(快速注意:SC.View.design()
和 SC.View.extend()
几乎相同,但是 . design()
已被弃用;我们正在更新指南以匹配最佳实践)。
关于view - 如何在 Sproutcore 中分割 View 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19532094/