9
votes

Passer des variables bootstrated et Json à exiger.js

Quelle est la meilleure pratique pour réussir les variables bootstrappées dans la page rendue (c.-à-d. Les données JSON ou les variables de configuration) à nécessitent.js code> afin qu'ils puissent être vérifiés pour une dépendance utilisée?

IT On dirait que cela pourrait être fait en cochant la fenêtre code> objet code> (ie fenêtre.bootsTrapped_models code> mais qui ne semble pas très optimal. p>

app. HTML CODE> - Exemple de données dans le document HTML P> xxx pré>

app.js code> - exemple d'application à l'aide d'exiger () p>

require(['jquery', 'GroupCollection'], function($, GroupCollection) {

    // extend default config
    if (config) {
        $.extend(defaults, config);
    }

    // use bootstrapped JSON here
    var collection = new GroupCollection;
    if (bootstrapped_models.groups.length > 0) {
        collection.add(bootstrapped_models.groups);
    }

});


0 commentaires

3 Réponses :


0
votes

Je ne sais pas si ma méthode est la meilleure pratique, mais je fais quelque chose comme ce que vous faites, sauf au lieu de boucher les modèles bootstrapped sur l'objet global, je crée une définition pour elle dans ma page HTML:

define(
[
    'require',
    'model'
],
function (require, Model)
{
    var json= require("bootstrappedModelJson");

    return new Model(json);   
});


0 commentaires

6
votes

La réponse de @timdunham a été utile, mais cela ressentait un peu trop compliqué pour moi. Jouer avec Exigence.js et Lithium (PHP MVC), j'ai proposé ce qui suit. C'est simple et a travaillé dans chaque instance que j'ai rencontré. xxx

qui est ensuite disponible en procédant comme suit: xxx

évidemment La façon dont je porte les données est spécifique de la langue, mais le reste devrait être utile quelle que soit votre situation.


1 commentaires

Je ne pouvais pas obtenir cela pour travailler avec optimiser mon JS ... J'ai essayé d'utiliser des exclushallow avec le module BoostrapData, mais lorsque je suis allé la compiler, il a toujours essayé de trouver un fichier BootstrapData. Quelqu'un peut-il expliquer comment ils ont eu pour travailler? Je suis assez nouveau à exiger.js. En outre, j'utilise besoin de la version 1.0.1 (au cas où cela fait une différence)



0
votes

Vous pouvez résoudre des problèmes d'optimisation / de construction en désactivant les bootstrapdata dans votre build.js Comme ceci: xxx


0 commentaires