28 Mart 2012, ÇARŞAMBA
Nasıl AMD (require.js)kullanırken Backbone.js içinde önyüklenen modelleri yüklemek için
Backbone.js belgeleri yükleme önyüklenen modelleri bu yol önerir:
<script>
var Accounts = new Backbone.Collection;
Accounts.reset(<%= @accounts.to_json %>);
var Projects = new Backbone.Collection;
Projects.reset(<%= @projects.to_json(:collaborators => true) %>);
</script>
Ama bu kullanılan bir kalıptırYaklaşım (require.js kullanarak) AMD
Mümkün olan tek çözüm bildirmektirglobal değişken JSON veri depolamave bu değişken daha sonra ilgili başlatma yöntemleri kullanın.
Bir yokturdaha iyi bir yolubu (global olmadan) yapmak için?
CEVAP
23 NİSAN 2012, PAZARTESİ
Bu genel ad kirletmez bir şekilde veri bootstrap. Yerine require.js sadece kullanır. Ayrıca şablon içinde ilk uygulama yapılandırma değişkenleri dayalı sağlamaya yardımcı olur.
Oluşturulan sayfa içinde
<script src="require.js"></script>
<script>
define('config', function() {
return {
bootstrappedAccounts: <%= @accounts.to_json %>,
bootstrappedProjects: <%= @projects.to_json(:collaborators => true) %>
};
});
</script>
<script src="app.js"></script>
globals.js
Bu yapılandırma için dosya teslim eder ve kendisi döndürülen verileri kullanarak genişletir
define([
'config',
'underscore'
], function(config) {
var globals = {
};
_.extend(globals, config);
return globals;
});
config.js
Bu dosya Eğer isterseniz app eğer Sayfa config
tanımlanmış varsa ne olursa olsun yüklemek mümkün olabilir.
define(function() {
// empty array for cases where `config` is not defined in-page
return {};
});
app.js
require([
'globals',
'underscore',
'backbone'
], function(globals) {
if (globals.bootstrappedAccounts) {
var accounts = new Backbone.Collection(globals.bootstrappedAccounts);
}
if (globals.bootstrappedProjects) {
var projects = new Backbone.Collection(globals.bootstrappedProjects);
}
});
Bunu Paylaş:
Nasıl başlatılıyor işlemek için ve Bac...
Nasıl Ubuntu 14.04 LT içinde 32-libs (...
Nasıl Windows pip yüklemek için?...
Nasıl bir proje içinde tek bir dosya i...
Nasıl klon ya da Python içinde bir lis...