1

私はバックボーンを使用しています: https://github.com/pragmaticly/smart-time-ago

ページをロードすると、以前のはずの場所に何も表示されません(ただし、バックボーンは機能しています)。

これが私のバックボーン ビューです。

class Voice.Views.PostsIndex extends Backbone.View

        template: JST['posts/index']

        initialize: ->
                @collection.on('reset', @render, this)

        render: ->
                $(@el).html(@template(posts: @collection)).timeago
                this

テンプレート/投稿/index.jst.eco

<% for post in @posts.models: %>
        <tbody id="postdata"><tr><td>
                <center>
                <% if post.get('content').length > 140: %>
                        <%=post.get('content').substring(0, 140)+"\t\t"%>
                        ...<a href="show/<%= post.get('id') %>">see more</a>
                <% else: %>
                        <%= post.get('content') %>
                <% end %>
        <br>    </center>
        <span class="green pull-left"><%= post.get('agrees') %>&nbsp;</span>
        <span class="red pull-left"><%= post.get('disagrees') %>&nbsp;</span>
        <span class="blue pull-left">0</span>
        <span class="pull-right">
            <time class="timeago" datetime="<%=post.get('created_at')%>">
            </time>
        </span>
        </td></tr></tbody>

アプリケーション.js

//= require jquery
//= require jquery_ujs
//= require timeago
//= require underscore
//= require backbone
//= require voice
//= require bootstrap.min
//= require_tree ../templates
//= require_tree ./models
//= require_tree ./collections
//= require_tree ./views
//= require_tree ./routers
//= require_tree .

とにかくこれを機能させる方法はありますか?前もって感謝します

4

1 に答える 1

1

これは関数呼び出しではありません:

$(@el).html(@template(posts: @collection)).timeago

これは、jQuery オブジェクトの関数を検索するtimeagoだけで、何も実行しません。call に括弧 (または引数) を追加する必要がありますtimeago:

$(@el).html(@template(posts: @collection)).timeago()
# you need these ---------------------------------^^

いくつかの引数を指定する場合、括弧は必要ありません:

$(@el).html(@template(posts: @collection)).timeago selector: '.pancakes'

関数への参照を取得するのではなく、関数を実行する必要があることを CoffeeScript に伝えるには、引数が存在するだけで十分です。

于 2012-12-04T04:15:04.233 に答える