Angular JS用户配置文件网格

时间:2015-04-22 16:23:59

标签: javascript html arrays angularjs twitter-bootstrap-3

我找到了一个我想在这里做的例子:

http://www.bootply.com/fzLrwL73pd

看起来这个例子是使用randomUser api生成随机用户信息和图片。我想创建一些非常类似的东西,但我手动输入静态信息。我尝试手动将信息输入到数组中,如下所示:

 var myApp = angular.module('myApp', [{"user":{"gender":"female","name":{"title":"mrs","first":"taylor","last":"griffin"},"location":{"street":"2822 w 6th st","city":"everett","state":"oregon","zip":"80020"},"email":"taylor.griffin62@example.com","username":"yellowswan550","password":"twiggy","salt":"UV3zFgdW","md5":"ceb4dbcf76444647f32b059dc3fc1280","sha1":"23ae9f24c4fd1d09e12c95bd75029ea850db3fb6","sha256":"09b6a019187249e1eff7ca736865ddb6f01567dbe20774872c3115a6cbbd6ae4","registered":"1185248430","dob":"328410973","phone":"(199)-530-3414","cell":"(441)-597-7462","SSN":"961-26-7598","picture":{"large":"http://api.randomuser.me/portraits/women/82.jpg","medium":"http://api.randomuser.me/portraits/med/women/82.jpg","thumbnail":"http://api.randomuser.me/portraits/thumb/women/82.jpg"},"version":"0.5","nationality":"US"},"seed":"81aa9d006e130994"}]);
function Main(myApp){    
    $('#loader').hide();
    $('#userList').show();
  ).error(function(data, status) {
    alert('get data error!');
  });

  $scope.showUserModal = function(idx){
    var user = $scope.users[idx].user;
    $scope.currUser = user;
    $('#myModalLabel').text(user.name.first
         + ' ' + user.name.last);
    $('#myModal').modal('show');
  }

}  

有没有办法轻松将此模板转换为更多静态内容?

提前感谢您的帮助!

3 个答案:

答案 0 :(得分:1)

可能很疯狂,但如果您正在寻找更多静态内容,是否可以窃取输出HTML并只是返工以满足您的需求?

看起来有点像你可以偷下面的东西:

<div class="row" id="userList">
    <div ng-repeat="u in users" class="col-xs-4 col-sm-2">
        <a href="" ng-click="showUserModal($index)"><img src="{{u.user.picture.large}}" class="img-thumbnail img-responsive img-circle"></a>
        <h3 class="text-center">{{u.user.name.first}}</h3>
        <hr>
    </div>
</div>

并按用户手动创建自己的div:

<div class="row" id="userList">
    <div class="col-xs-4 col-sm-2">
        <a href=""><img src="/001.jpg" class="img-thumbnail img-responsive img-circle"></a>
        <h3 class="text-center">User #1</h3>
        <hr>
    </div>
    <div class="col-xs-4 col-sm-2">
        <a href=""><img src="/002.jpg" class="img-thumbnail img-responsive img-circle"></a>
        <h3 class="text-center">User #2</h3>
        <hr>
    </div>
</div>

那么你可以为模态弹出窗口做类似的事情,并在点击用户时使用JS来调用它们吗?

答案 1 :(得分:1)

感谢您的所有答案;但是,我想我终于搞清楚了!

在bootstrap中有一种称为模态(getboostrap.com/javascript)的东西。我只是使用带有图像而不是按钮的模态。我甚至可以使用上面例子中模态的部分布局:

 <!-- image trigger modal -->
<a href="#" data-toggle="modal" data-target="#testModal">
  <img class="img-responsive staffimg" src="images/profile.png">
</a>


  <div id="testModal" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="testLabel" aria-hidden="true">
    <div class="modal-dialog">
    <div class="modal-content">
        <div class="modal-header bg-info">
            <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
            <h1 id="testLabel" class="text-center"></h1>
        </div>
        <div class="modal-body">
          <div class="container-fluid">
            <div class="row">
                <div class="col-xs-4 col-xs-offset-4"><img src="images/profile.png" class="img-thumbnail img-responsive img-circle"></div>
            </div>
            <hr>
            <div class="row">
              <h4 class="text-center"><i class="fa fa-fw fa-phone fa-2x"></i> Phone:&nbsp;555-555-5555 ect 555</h4>
              <h4 class="text-center"><i class="fa fa-fw fa-envelope-o fa-2x"></i> Email:<a href="mailto:test@gmail.com> test@gmail.com</a></h4>
              <h4 class="text-center"><i class="fa fa-fw fa-user fa-2x"></i> penguins66</h4>
            </div>
          </div>
        </div>
        <div class="modal-footer bg-info">
            <button class="btn btn-lg btn-default center-block" data-dismiss="modal" aria-hidden="true">Okay!</button>
        </div>
    </div>
    </div>
  </div><!--/modal-->

答案 2 :(得分:0)

var myApp = angular.module('myApp',[{“user”:{“gender”:“female”..); 以上这条线是错误的。模块函数的第二个参数是依赖项名称。这个例子很简单。它从Web服务获取数据并加载要显示的数据。如果要静态设置,请尝试将其设置为$ scope.users = [ 您的用户数据 ]。请参阅下面的完整代码。它

var myApp = angular.module('myApp', []);
    function Main($scope, $http){
      
      $scope.users = [{"user":{"gender":"female","name":{"title":"mrs","first":"taylor","last":"griffin"},"location":{"street":"2822 w 6th st","city":"everett","state":"oregon","zip":"80020"},"email":"taylor.griffin62@example.com","username":"yellowswan550","password":"twiggy","salt":"UV3zFgdW","md5":"ceb4dbcf76444647f32b059dc3fc1280","sha1":"23ae9f24c4fd1d09e12c95bd75029ea850db3fb6","sha256":"09b6a019187249e1eff7ca736865ddb6f01567dbe20774872c3115a6cbbd6ae4","registered":"1185248430","dob":"328410973","phone":"(199)-530-3414","cell":"(441)-597-7462","SSN":"961-26-7598","picture":{"large":"http://api.randomuser.me/portraits/women/82.jpg","medium":"http://api.randomuser.me/portraits/med/women/82.jpg","thumbnail":"http://api.randomuser.me/portraits/thumb/women/82.jpg"},"version":"0.5","nationality":"US"},"seed":"81aa9d006e130994"}];
        $('#loader').hide();
        $('#userList').show();
      
      $scope.showUserModal = function(idx){
        var user = $scope.users[idx].user;
        $scope.currUser = user;
        $('#myModalLabel').text(user.name.first
             + ' ' + user.name.last);
        $('#myModal').modal('show');
      }
     
    }