requirejs jsonプラグイン(done)

3297 ワード

requirejsにはいったいどれだけのプラグインがありますか?bower search requireを実行します.結果は次のとおりです.
➜  lib  $ bower search require
Search results:

    requirejs git://github.com/jrburke/requirejs-bower.git
    requirejs-text git://github.com/requirejs/text
    requirejs-plugins git://github.com/millermedeiros/requirejs-plugins.git
    requirejs-domready git://github.com/requirejs/domReady.git
    ...
➜  lib  $

ここ:https://github.com/millermedeiros/requirejs-pluginsを選択します.
➜  lib  $ bower install --save requirejs-plugins
...
➜  lib  $ bower list --paths

  'mustache.js': 'bower_components/mustache.js/mustache.js',
  pure: 'bower_components/pure/pure.css',
  'requirejs-plugins': [
    'bower_components/requirejs-plugins/src/async.js',
    'bower_components/requirejs-plugins/src/depend.js',
    'bower_components/requirejs-plugins/src/font.js',
    'bower_components/requirejs-plugins/src/goog.js',
    'bower_components/requirejs-plugins/src/image.js',
    'bower_components/requirejs-plugins/src/json.js',
    'bower_components/requirejs-plugins/src/mdown.js',
    'bower_components/requirejs-plugins/src/noext.js',
    'bower_components/requirejs-plugins/src/propertyParser.js',
    'bower_components/requirejs-plugins/lib/Markdown.Converter.js',
    'bower_components/requirejs-plugins/lib/text.js'
  ],
  text: 'bower_components/text/text.js'

そして私はjsonをjsコピーしてrequirejs-json-0.4.0と名前を変更します.js
requirejs configファイルの変更
require.config({
    baseUrl: 'lib/',
    paths: {
        jquery: 'jquery-2.1.4',
        underscore: 'underscore-1.8.3',
        mustache: 'mustache-2.2.0',
        templates: '../templates',
        text: 'requirejs-text-2.0.14',
        json: 'requirejs-json-0.4.0'
    },
    shim: {
        // nothing
    }
});

require(['../js/app'], function(App) {
    App.initialize();
})

moduleのdefineを変更するには、次のようにします.
define(['jquery', 'underscore', 'mustache', 'text!templates/nav.html', 'json!http://localhost:3000/blogs'],
    function ($, _, Mustache, navTemplate, blogPosts) {
    var initialize = function () {
        console.log('hello, $ is ', $.fn.jquery);
        console.log('hello, _ is ', _.VERSION);
        console.log("nav:", navTemplate);

        console.log(blogPosts);

        var info = [];
        $.each(blogPosts, function (key, val) {
            var blog = {};
            blog.title = val['title'];
            blog.description = val['description'];
            blog.slug = val['slug'];
            blog.keywords = val['keywords'];
            blog.created = val['created'];
            info.push(blog);
        });

        console.log(info);

        var template = navTemplate;
        var html = Mustache.to_html(template, info);
        $("#blogArea").html(html);

    };

    return {
        initialize: initialize
    }
});

変更された関連コードはここにあります.https://github.com/uniquejava/replay.moqi.mobi/commit/7fd313a43d9d67d90df71450efd25a3149885610