2015-12-17 2 views
0

Я пытаюсь включить angularjs в моем коде
Rails angularjs конвертировать Еврорадио

<button class="btn" ng-click="editUser(user.id)"> 
      <span class="glyphicon glyphicon-pencil"></span>  Edit 
     </button> 


Так вот код мне нужно преобразовать в Еврорадио

<%= button_to , :class => 'btn' do %> 
      <span class="glyphicon glyphicon-pencil"></span>  Edit 
     <% end %> 


как написать это ng-click = "editUser (user.id)

ответ

0

button_to создает форму тег, который, безусловно, излишним здесь, также отметить, что button_to требует URL и приложить некоторые дополнительные JavaScript слушателей на нем. Просто используйте чистый HTML:

<button class="btn" ng-click="editUser(user.id)"> 
    <span class="glyphicon glyphicon-pencil"></span> Edit 
</button> 

Если вы действительно предпочитаете Еврорадио в какой-либо форме, используйте content_tag:

<%= content_tag :button, class: 'btn', 'ng-click' => '(editUser(user.id)' do %> 
    <span class="glyphicon glyphicon-pencil"></span> Edit 
<% end %> 

Я лично использую HAML для шаблонов, так как он играет очень хорошо с префиксом нг. Многие люди жалуются, что это делает большой файл труднее читать - я думаю, что это хорошо, поскольку оно заставляет вас иметь короткие файлы, для которых удобство чтения просто отлично:

%button.btn{ng: {click: '(editUser(user.id)'}} 
    %span.glyphicon.glyphicon-pencil 
    Edit 
0

Вы можете попробовать этот способ

<%= button_to , :class => 'btn', "ng-click" => "editUser(#{user.id})" do %> 
    <span class="glyphicon glyphicon-pencil"></span> Edit 
<% end %> 
Смежные вопросы