diff --git a/src/functions/viewClassFactory.js b/src/functions/viewClassFactory.js
index <HASH>..<HASH> 100644
--- a/src/functions/viewClassFactory.js
+++ b/src/functions/viewClassFactory.js
@@ -4,7 +4,7 @@ function viewClassFactory(ctor, defaultOptions)
 {
 	return function(options)
 	{
-		return new ctor(mixins({}, defaultOptions || {}, options || {}));
+		return new ctor(mixins({}, (typeof defaultOptions === 'function' ? defaultOptions() : defaultOptions) || {}, options || {}));
 	}
 }
feat(viewClassFactory): default options could be a function returning options object

This will enable use of lazy initialization of view options, i.e. shared singleton services