Partials template in underscore (just like in handlebars)?

前端 未结 3 1896
囚心锁ツ
囚心锁ツ 2021-01-02 05:03

I have a backbone model like this

var PeopleModel = Backbone.Model.extend({
defaults: {              
    \"people\": [
          { \"username\": \"alan\", \         


        
3条回答
  •  无人及你
    2021-01-02 05:32

    I think this is similar to Dave's answer, but perhaps requiring less code:

    function partialTemplate(origTemplate, partialValues){
        return function(values){
            return origTemplate(_.defaults(values, partialValues));
        };
    }
    

    Example usage:

    var t = _.template('<%= val1 %>,<%= val2 %>'); // original template requiring 2 values
    var pt = partialTemplate(t, {val1:1}); // partial template with 1 value pre-populated
    pt({val2:2}); // returns '1,2'
    pt({val2:3}); // returns '1,3'
    

提交回复
热议问题