order by dynamic

HTML

<div ng-app="myApp">
    <div ng-controller="myCntrl">
       <select ng-model='Obj.selected'>
            <option value="data.name">Name</option>
            <option value="data.score">Score</option>

        </select>
     
{{Obj.selected}}
<ul ng-repeat="shop in shops | orderBy: Obj.selected  ">

            <li class="name">{{shop.data.name}}</li>
            <li class="score">Score: {{shop.data.score}}</li>
            

</ul>

JavaScript

angular.module('myApp', [])
    .controller("myCntrl", function ($scope) {

    $scope.shops = [
        {
            "foo": "bar",
            "data": {
            "name": "a",
            "score": "5"
            }
        },
        {
            "foo": "bar",
             "data": {
            "name": "b",
            "score": "4"
             }
        },
       {
           "foo": "bar",
            "data": {
            "name": "c",
            "score": "6"
            }
        }
             
     
    ];

})