mirror of
https://github.com/the-djmaze/snappymail.git
synced 2025-10-06 11:45:48 +08:00
ko applyBindings optimization
This commit is contained in:
parent
f3c0d0fbc7
commit
c458ea8103
8 changed files with 198 additions and 183 deletions
|
@ -88,10 +88,9 @@ Knoin.prototype.buildViewModel = function (ViewModelClass, oScreen)
|
||||||
|
|
||||||
if (oViewModelPlace && 1 === oViewModelPlace.length)
|
if (oViewModelPlace && 1 === oViewModelPlace.length)
|
||||||
{
|
{
|
||||||
oViewModelDom = $('<div>').addClass('rl-view-model').addClass('RL-' + oViewModel.viewModelTemplate()).hide().attr('data-bind',
|
oViewModelDom = $('<div></div>').addClass('rl-view-model').addClass('RL-' + oViewModel.viewModelTemplate()).hide();
|
||||||
'template: {name: "' + oViewModel.viewModelTemplate() + '"}, i18nInit: true');
|
|
||||||
|
|
||||||
oViewModelDom.appendTo(oViewModelPlace);
|
oViewModelDom.appendTo(oViewModelPlace);
|
||||||
|
|
||||||
oViewModel.viewModelDom = oViewModelDom;
|
oViewModel.viewModelDom = oViewModelDom;
|
||||||
ViewModelClass.__dom = oViewModelDom;
|
ViewModelClass.__dom = oViewModelDom;
|
||||||
|
|
||||||
|
@ -134,7 +133,11 @@ Knoin.prototype.buildViewModel = function (ViewModelClass, oScreen)
|
||||||
|
|
||||||
Plugins.runHook('view-model-pre-build', [ViewModelClass.__name, oViewModel, oViewModelDom]);
|
Plugins.runHook('view-model-pre-build', [ViewModelClass.__name, oViewModel, oViewModelDom]);
|
||||||
|
|
||||||
ko.applyBindings(oViewModel, oViewModelDom[0]);
|
ko.applyBindingAccessorsToNode(oViewModelDom[0], {
|
||||||
|
'i18nInit': true,
|
||||||
|
'template': function () { return {'name': oViewModel.viewModelTemplate()};}
|
||||||
|
}, oViewModel);
|
||||||
|
|
||||||
Utils.delegateRun(oViewModel, 'onBuild', [oViewModelDom]);
|
Utils.delegateRun(oViewModel, 'onBuild', [oViewModelDom]);
|
||||||
if (oViewModel && 'Popups' === sPosition)
|
if (oViewModel && 'Popups' === sPosition)
|
||||||
{
|
{
|
||||||
|
|
|
@ -63,9 +63,7 @@ AbstractSettings.prototype.onRoute = function (sSubName)
|
||||||
RoutedSettingsViewModel = /** @type {?Function} */ RoutedSettingsViewModel;
|
RoutedSettingsViewModel = /** @type {?Function} */ RoutedSettingsViewModel;
|
||||||
oSettingsScreen = new RoutedSettingsViewModel();
|
oSettingsScreen = new RoutedSettingsViewModel();
|
||||||
|
|
||||||
oViewModelDom = $('<div></div>').addClass('rl-settings-view-model').hide().attr('data-bind',
|
oViewModelDom = $('<div></div>').addClass('rl-settings-view-model').hide();
|
||||||
'template: {name: "' + RoutedSettingsViewModel.__rlSettingsData.Template + '"}, i18nInit: true');
|
|
||||||
|
|
||||||
oViewModelDom.appendTo(oViewModelPlace);
|
oViewModelDom.appendTo(oViewModelPlace);
|
||||||
|
|
||||||
oSettingsScreen.data = RL.data();
|
oSettingsScreen.data = RL.data();
|
||||||
|
@ -77,7 +75,11 @@ AbstractSettings.prototype.onRoute = function (sSubName)
|
||||||
RoutedSettingsViewModel.__builded = true;
|
RoutedSettingsViewModel.__builded = true;
|
||||||
RoutedSettingsViewModel.__vm = oSettingsScreen;
|
RoutedSettingsViewModel.__vm = oSettingsScreen;
|
||||||
|
|
||||||
ko.applyBindings(oSettingsScreen, oViewModelDom[0]);
|
ko.applyBindingAccessorsToNode(oViewModelDom[0], {
|
||||||
|
'i18nInit': true,
|
||||||
|
'template': function () { return {'name': RoutedSettingsViewModel.__rlSettingsData.Template}; }
|
||||||
|
}, oSettingsScreen);
|
||||||
|
|
||||||
Utils.delegateRun(oSettingsScreen, 'onBuild', [oViewModelDom]);
|
Utils.delegateRun(oSettingsScreen, 'onBuild', [oViewModelDom]);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
|
@ -4340,10 +4340,9 @@ Knoin.prototype.buildViewModel = function (ViewModelClass, oScreen)
|
||||||
|
|
||||||
if (oViewModelPlace && 1 === oViewModelPlace.length)
|
if (oViewModelPlace && 1 === oViewModelPlace.length)
|
||||||
{
|
{
|
||||||
oViewModelDom = $('<div>').addClass('rl-view-model').addClass('RL-' + oViewModel.viewModelTemplate()).hide().attr('data-bind',
|
oViewModelDom = $('<div></div>').addClass('rl-view-model').addClass('RL-' + oViewModel.viewModelTemplate()).hide();
|
||||||
'template: {name: "' + oViewModel.viewModelTemplate() + '"}, i18nInit: true');
|
|
||||||
|
|
||||||
oViewModelDom.appendTo(oViewModelPlace);
|
oViewModelDom.appendTo(oViewModelPlace);
|
||||||
|
|
||||||
oViewModel.viewModelDom = oViewModelDom;
|
oViewModel.viewModelDom = oViewModelDom;
|
||||||
ViewModelClass.__dom = oViewModelDom;
|
ViewModelClass.__dom = oViewModelDom;
|
||||||
|
|
||||||
|
@ -4386,7 +4385,11 @@ Knoin.prototype.buildViewModel = function (ViewModelClass, oScreen)
|
||||||
|
|
||||||
Plugins.runHook('view-model-pre-build', [ViewModelClass.__name, oViewModel, oViewModelDom]);
|
Plugins.runHook('view-model-pre-build', [ViewModelClass.__name, oViewModel, oViewModelDom]);
|
||||||
|
|
||||||
ko.applyBindings(oViewModel, oViewModelDom[0]);
|
ko.applyBindingAccessorsToNode(oViewModelDom[0], {
|
||||||
|
'i18nInit': true,
|
||||||
|
'template': function () { return {'name': oViewModel.viewModelTemplate()};}
|
||||||
|
}, oViewModel);
|
||||||
|
|
||||||
Utils.delegateRun(oViewModel, 'onBuild', [oViewModelDom]);
|
Utils.delegateRun(oViewModel, 'onBuild', [oViewModelDom]);
|
||||||
if (oViewModel && 'Popups' === sPosition)
|
if (oViewModel && 'Popups' === sPosition)
|
||||||
{
|
{
|
||||||
|
@ -7864,9 +7867,7 @@ AbstractSettings.prototype.onRoute = function (sSubName)
|
||||||
RoutedSettingsViewModel = /** @type {?Function} */ RoutedSettingsViewModel;
|
RoutedSettingsViewModel = /** @type {?Function} */ RoutedSettingsViewModel;
|
||||||
oSettingsScreen = new RoutedSettingsViewModel();
|
oSettingsScreen = new RoutedSettingsViewModel();
|
||||||
|
|
||||||
oViewModelDom = $('<div></div>').addClass('rl-settings-view-model').hide().attr('data-bind',
|
oViewModelDom = $('<div></div>').addClass('rl-settings-view-model').hide();
|
||||||
'template: {name: "' + RoutedSettingsViewModel.__rlSettingsData.Template + '"}, i18nInit: true');
|
|
||||||
|
|
||||||
oViewModelDom.appendTo(oViewModelPlace);
|
oViewModelDom.appendTo(oViewModelPlace);
|
||||||
|
|
||||||
oSettingsScreen.data = RL.data();
|
oSettingsScreen.data = RL.data();
|
||||||
|
@ -7878,7 +7879,11 @@ AbstractSettings.prototype.onRoute = function (sSubName)
|
||||||
RoutedSettingsViewModel.__builded = true;
|
RoutedSettingsViewModel.__builded = true;
|
||||||
RoutedSettingsViewModel.__vm = oSettingsScreen;
|
RoutedSettingsViewModel.__vm = oSettingsScreen;
|
||||||
|
|
||||||
ko.applyBindings(oSettingsScreen, oViewModelDom[0]);
|
ko.applyBindingAccessorsToNode(oViewModelDom[0], {
|
||||||
|
'i18nInit': true,
|
||||||
|
'template': function () { return {'name': RoutedSettingsViewModel.__rlSettingsData.Template}; }
|
||||||
|
}, oSettingsScreen);
|
||||||
|
|
||||||
Utils.delegateRun(oSettingsScreen, 'onBuild', [oViewModelDom]);
|
Utils.delegateRun(oSettingsScreen, 'onBuild', [oViewModelDom]);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
8
rainloop/v/0.0.0/static/js/admin.min.js
vendored
8
rainloop/v/0.0.0/static/js/admin.min.js
vendored
File diff suppressed because one or more lines are too long
|
@ -5273,10 +5273,9 @@ Knoin.prototype.buildViewModel = function (ViewModelClass, oScreen)
|
||||||
|
|
||||||
if (oViewModelPlace && 1 === oViewModelPlace.length)
|
if (oViewModelPlace && 1 === oViewModelPlace.length)
|
||||||
{
|
{
|
||||||
oViewModelDom = $('<div>').addClass('rl-view-model').addClass('RL-' + oViewModel.viewModelTemplate()).hide().attr('data-bind',
|
oViewModelDom = $('<div></div>').addClass('rl-view-model').addClass('RL-' + oViewModel.viewModelTemplate()).hide();
|
||||||
'template: {name: "' + oViewModel.viewModelTemplate() + '"}, i18nInit: true');
|
|
||||||
|
|
||||||
oViewModelDom.appendTo(oViewModelPlace);
|
oViewModelDom.appendTo(oViewModelPlace);
|
||||||
|
|
||||||
oViewModel.viewModelDom = oViewModelDom;
|
oViewModel.viewModelDom = oViewModelDom;
|
||||||
ViewModelClass.__dom = oViewModelDom;
|
ViewModelClass.__dom = oViewModelDom;
|
||||||
|
|
||||||
|
@ -5319,7 +5318,11 @@ Knoin.prototype.buildViewModel = function (ViewModelClass, oScreen)
|
||||||
|
|
||||||
Plugins.runHook('view-model-pre-build', [ViewModelClass.__name, oViewModel, oViewModelDom]);
|
Plugins.runHook('view-model-pre-build', [ViewModelClass.__name, oViewModel, oViewModelDom]);
|
||||||
|
|
||||||
ko.applyBindings(oViewModel, oViewModelDom[0]);
|
ko.applyBindingAccessorsToNode(oViewModelDom[0], {
|
||||||
|
'i18nInit': true,
|
||||||
|
'template': function () { return {'name': oViewModel.viewModelTemplate()};}
|
||||||
|
}, oViewModel);
|
||||||
|
|
||||||
Utils.delegateRun(oViewModel, 'onBuild', [oViewModelDom]);
|
Utils.delegateRun(oViewModel, 'onBuild', [oViewModelDom]);
|
||||||
if (oViewModel && 'Popups' === sPosition)
|
if (oViewModel && 'Popups' === sPosition)
|
||||||
{
|
{
|
||||||
|
@ -18177,9 +18180,7 @@ AbstractSettings.prototype.onRoute = function (sSubName)
|
||||||
RoutedSettingsViewModel = /** @type {?Function} */ RoutedSettingsViewModel;
|
RoutedSettingsViewModel = /** @type {?Function} */ RoutedSettingsViewModel;
|
||||||
oSettingsScreen = new RoutedSettingsViewModel();
|
oSettingsScreen = new RoutedSettingsViewModel();
|
||||||
|
|
||||||
oViewModelDom = $('<div></div>').addClass('rl-settings-view-model').hide().attr('data-bind',
|
oViewModelDom = $('<div></div>').addClass('rl-settings-view-model').hide();
|
||||||
'template: {name: "' + RoutedSettingsViewModel.__rlSettingsData.Template + '"}, i18nInit: true');
|
|
||||||
|
|
||||||
oViewModelDom.appendTo(oViewModelPlace);
|
oViewModelDom.appendTo(oViewModelPlace);
|
||||||
|
|
||||||
oSettingsScreen.data = RL.data();
|
oSettingsScreen.data = RL.data();
|
||||||
|
@ -18191,7 +18192,11 @@ AbstractSettings.prototype.onRoute = function (sSubName)
|
||||||
RoutedSettingsViewModel.__builded = true;
|
RoutedSettingsViewModel.__builded = true;
|
||||||
RoutedSettingsViewModel.__vm = oSettingsScreen;
|
RoutedSettingsViewModel.__vm = oSettingsScreen;
|
||||||
|
|
||||||
ko.applyBindings(oSettingsScreen, oViewModelDom[0]);
|
ko.applyBindingAccessorsToNode(oViewModelDom[0], {
|
||||||
|
'i18nInit': true,
|
||||||
|
'template': function () { return {'name': RoutedSettingsViewModel.__rlSettingsData.Template}; }
|
||||||
|
}, oSettingsScreen);
|
||||||
|
|
||||||
Utils.delegateRun(oSettingsScreen, 'onBuild', [oViewModelDom]);
|
Utils.delegateRun(oSettingsScreen, 'onBuild', [oViewModelDom]);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
16
rainloop/v/0.0.0/static/js/app.min.js
vendored
16
rainloop/v/0.0.0/static/js/app.min.js
vendored
File diff suppressed because one or more lines are too long
Loading…
Add table
Reference in a new issue