0

在我的 json 数据中,我得到projectNameassignedTo值(它在所有数据中累积),

示例数据:

  [ {projectName:'project1',assignedTo:'some1'},{projectName:'project2',assignedTo:'some2'}]

我的模板是:(包括我困惑的东西)

<script id="listTemplate" type="text/template">
    <a href="#"><%= projectName === projectName ? projectName : taskStatus%></a>//not works how can i mange?
</script>

在我看来,我正在转换模型"toJSON()",但我在我使用的 2 个链接中单独获取项目名称。

我的请求,是否可以使用单个模板打印两个不同的值?- 作为第一次我需要打印项目名称,稍后在某些条件下打印 taskStatus,如果有任何建议请

4

1 回答 1

1

之所以不断打印项目名称是因为,在模板中,你有...

<a href="#"><%= projectName === projectName ? projectName : taskStatus%></a>

projectName总是等于projectName。在这种情况下,您要做的是,在您的 Backbone.View 中,当您序列化要由模板使用的模型时,您可以执行此操作...

Backbone.View.extend({
    events: {
        // An example on how to change the display
        'click button.change-display': 'onChangeDisplayClicked'   
    },
    template: _.template(...),

    // Controls whether project name should be shown or not.
    showProjectName: true,

    onChangeDisplayClicked: function() {
        // Flip the switch
        this.showProjectName = !this.showProjectName;

        // Re-render the View
        this.render();
    },

    serialize: function() {
        // Grab the data from model
        var data = this.model.toJSON();

        // Pass this data to the template to control what to be displayed.
        data.showProjectName = this.showProjectName;
        return data;
    },

    render: function() {
        this.$el.html(this.template(this.serialize()));
    }
});

...在您的模板中,您将...

<script id="listTemplate" type="text/template">
    <a href="#"><%= showProjectName ? projectName : taskStatu s%></a>
</script>
于 2013-02-06T17:06:43.297 回答