视图中的辅助函数
helper functions inside a view
我的任务是维护一个使用 backbone 的网络应用程序。前任维护者离开,无法回答任何问题。
我已经解决了我发现的几乎所有问题和问题,但有一个问题真的让我摸不着头脑。
在一个视图中,有一堆像这样的辅助函数:
isVerifiedByAdmin: function() {
return this.model.get('verificationDate') !== null;
},
我的问题是,像这样把它放在视图的初始化方法中不是更容易吗?
initialize: function (attrs) {
this.isVerifiedByAdmin = this.model.get('verificationDate') !== null;
}
initialize
状态下模型中"verificationDate "的值可能与调用isVerifiedByAdmin()
时的值不一样。
没有更多信息很难判断,但似乎是不同的用例。可能在您的应用程序中它不会产生任何影响。
u.k 是正确的。如果您在初始化中声明该变量,那么这将是一次性的事情,因为初始化是构造函数。因此,通过将其拆分为自己单独的功能,您将能够在用户使用该应用程序时实时确定该陈述是真还是假。
如果是我的话,我肯定会把这个拆分作为一个函数。但是,如果在多个视图中使用相同的功能,那么创建一个实用程序 class 然后 require/import 在每个使用它的视图中创建该实用程序可能是有意义的。
我的任务是维护一个使用 backbone 的网络应用程序。前任维护者离开,无法回答任何问题。
我已经解决了我发现的几乎所有问题和问题,但有一个问题真的让我摸不着头脑。
在一个视图中,有一堆像这样的辅助函数:
isVerifiedByAdmin: function() {
return this.model.get('verificationDate') !== null;
},
我的问题是,像这样把它放在视图的初始化方法中不是更容易吗?
initialize: function (attrs) {
this.isVerifiedByAdmin = this.model.get('verificationDate') !== null;
}
initialize
状态下模型中"verificationDate "的值可能与调用isVerifiedByAdmin()
时的值不一样。
没有更多信息很难判断,但似乎是不同的用例。可能在您的应用程序中它不会产生任何影响。
u.k 是正确的。如果您在初始化中声明该变量,那么这将是一次性的事情,因为初始化是构造函数。因此,通过将其拆分为自己单独的功能,您将能够在用户使用该应用程序时实时确定该陈述是真还是假。
如果是我的话,我肯定会把这个拆分作为一个函数。但是,如果在多个视图中使用相同的功能,那么创建一个实用程序 class 然后 require/import 在每个使用它的视图中创建该实用程序可能是有意义的。