Skip to content

Instantly share code, notes, and snippets.

@tiborsaas
Last active August 29, 2015 14:20
Show Gist options
  • Save tiborsaas/9937dd83a51597a88108 to your computer and use it in GitHub Desktop.
Save tiborsaas/9937dd83a51597a88108 to your computer and use it in GitHub Desktop.
Dynamic Backbone models
define([
'backbone',
'models/export/YouTubeExport',
'models/export/ImgurExport'
], function (
Backbone,
YouTubeExport,
ImgurExport
) {
'use strict';
var ExportModelWrapper = function(options){
var targets = {
youtube: YouTubeExport,
imgur: ImgurExport
};
var target = targets[ options.target ].prototype;
var ExportModel = target.constructor.extend({
constructor: function (options) {
target.constructor.apply(this, arguments);
targets = null;
}
});
return ExportModel;
}
return ExportModelWrapper;
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment