2013-04-09 4 views
1

Я создаю приложение ember.js. Первая страница - это одно поле с кнопкой. Нажатие кнопки, я хотел бы, чтобы он пошел по пути #/deals/:api_key. Однако, когда я нажимаю кнопку, я не понимаю, как это сделать.Ember Переход с запросом param

Вот что я до сих пор:

App = Ember.Application.create(); 

App.Store = DS.Store.extend({ 
    revision: 12, 
    adapter: 'DS.FixtureAdapter' 
}); 

App.Deal = DS.Model.extend({ 
    name: DS.attr('string') 
}); 

App.Router.map(function() { 
    this.resource('start', { path: '/' }); 
    this.resource('deals', { path: '/deals/:api_key' }); 
}); 

App.DealsRoute = Ember.Route.extend({ 
    model: function(params) { 
    return App.Deal.find(); 
    } 
}); 

App.StartController = Ember.ObjectController.extend({ 
    apiKey: "", 
    getDeals: function (model) { 
    this.transitionToRoute('deals'); 
    } 
}); 

App.DealsView = Ember.View.extend({ 
    didInsertElement: function() { 
    // Add active class to first item 
    this.$().find('.item').first().addClass('active'); 
    this.$().find('.carousel').carousel({interval: 1000}); 
    } 
}); 

    <script type="text/x-handlebars" data-template-name="start"> 
    {{view Em.TextField valueBinding="apiKey" placeholder="API Key"}} 
    <br /> 
    <button {{action 'getDeals'}} class="btn btn-large">Get Won Deals!</button> 
    </script> 

    <script type="text/x-handlebars" data-template-name="deals"> 
    <div id="carousel" class="carousel slide"> 
     <div class="carousel-inner"> 
     {{#each model}} 
      <div class="item"> 
      {{name}} 
      </div> 
     {{/each}} 
     </div> 
    </div> 
    </script> 

Всех предложения на правильном пути, чтобы передать данные из текстового ввода в следующий переход как пары запроса?

ответ

0

вам необходимо передать параметр в виде ссылки в хелпер, например.

{{#linkTo 'deals' api_key}}go to deals{{/linkTo}} 

Это создает связь с динамическим сектором, в котором вы нуждаетесь.

<a href="/deals/[the_dynamic_apykey]">go to deals</a> 

Проверьте документы о linkTo для получения дополнительной информации: http://emberjs.com/guides/templates/links/

+0

Я знаком с 'помощником linkTo', пытались сделать это через действие кнопки контроллера. Думаю, я понял это, что выявило еще одну проблему. – brandonhilkert

Смежные вопросы