2

私は emberjs を使用してモバイル Web アプリに取り組んでいます。ビュー内のコンポーネントのレンダリングには kendo UI mobile を使用し、他のすべての操作には Ember.js を使用しています。問題は、剣道がアクティブな間 (new kendo.mobile.Application() がコメントされていない間)、handelbars スクリプト内にラップされた html がレンダリングされないことです。

何か不足していますか?

ビューのコードは次のとおりです。

<script type="text/x-handlebars" data-template-name="venues">
        <div>
            <ul data-role="listview">
                <li>
                    <div class="test">
                        <img src="http://placehold.it/350x150" alt="">
                        <h1>Venue Name</h1>
                        <p>calle 7 esq. 10 numero 14. Residencial Rosmil</p>
                    </div>
                </li>
                <li>
                    <div class="test">
                        <img src="http://placehold.it/350x150" alt="">
                        <h1>Venue Name</h1>
                        <p>calle 7 esq. 10 numero 14. Residencial Rosmil</p>
                    </div>
                </li>
                <li>
                    <div class="test">
                        <img src="http://placehold.it/350x150" alt="">
                        <h1>Venue Name</h1>
                        <p>calle 7 esq. 10 numero 14. Residencial Rosmil</p>
                    </div>
                </li>
                <li>
                    <div class="test">
                        <img src="http://placehold.it/350x150" alt="">
                        <h1>Venue Name</h1>
                        <p>calle 7 esq. 10 numero 14. Residencial Rosmil</p>
                    </div>
                </li>
                <li>
                    <div class="test">
                        <img src="http://placehold.it/350x150" alt="">
                        <h1>Venue Name</h1>
                        <p>calle 7 esq. 10 numero 14. Residencial Rosmil</p>
                    </div>
                </li>
            </ul>
        </div>
</script>

ルーターのコードは次のとおりです。

apptest.Router.map(function() {
    this.resource('venues',{'path': '/'});
});

apptest.VenuesRoute = Ember.Route.extend({
    model: function () {
        return this.store.find('venue');
    },
});

application.js ファイルのコードは次のとおりです。

var apptest = Ember.Application.create();
apptest.Store = DS.Store.extend({
    revision:13,
    adapter: DS.FixtureAdapter.create()
});

var app = new kendo.mobile.Application();
4

1 に答える 1

1

ビューがレンダリングされた後、おそらく剣道アプリを作成する必要があります。

App.VenuesView = Ember.View.extend({
  didInsertElement: function() {
    var app = new kendo.mobile.Application();
  }
});

また、後でアクセスする代わりに、アプリをグローバル変数に割り当てることもできます。

window.KendoApp = new kendo.mobile.Application();
于 2013-10-02T09:38:00.537 に答える