试图在页面加载Angularjs时启动变量

时间:2015-09-23 02:43:59

标签: ruby-on-rails ruby angularjs

我正在尝试在页面加载时启动变量showName。当我使用angular只使用angular时它工作得很好但是当我使用rails(带有嵌入的ruby标签)实现它时,我无法隐藏文本字段并保存按钮,因为我的变量未定义。我尝试了几种方式,结果没有结果。

这是我的代码。任何帮助都非常感谢。感谢。

Edit.html.erb:

<div class="row" ng-controller="EditUserCtrl">
<div class="col-md-6 col-md-offset-3" id="editForm">
    <%= form_for(@user) do |f| %>
        <h1 id="editHeader">Account Information </h1>
        <%= render 'shared/error_messages' %>
        <div class="form-group">
            <%= f.label :name, "Full Name:" %><br>
            <div class="row">

                <div class="col-sm-7">
                    <div ng-hide="showName">
                        <%= f.label :name, @user.name , id:"editFields" %>
                    </div>
                    <%= f.text_field :name, { :'ng-show' => 'showName'}%>
                </div>

                <div class="col-sm-5" ng-show="showName">
                    <%= f.button "Save", :action => "update_name" , :method => :put, class: "btn btn-primary", :'ng-click' => "clicked()", id:"editAccount" %>
                </div>

                <div class="col-sm-5" ng-hide="showName">
                    <a href="" ng-click="editName()" ng-hide="showName"> <i id="nav-cart-count" class="glyphicon glyphicon-edit"></i> Edit </a>
                </div>

            </div>
        </div>
    <% end %>
</div>

1 个答案:

答案 0 :(得分:0)

使用ng-init初始化变量

<div class="row" ng-controller="EditUserCtrl" ng-init="showName = true">