0

I'm having trouble understanding some of the basics. Here are 2 controllers I have:

<form ng-controller="NewList" id="form" ng-submit="submit()">
    <input name="title" ng-model="formData.title" placeholder="{{placeholders.title}}" />
    <button type="submit">Generate</button>
    <p ng-show="loading == 1">Loading...</p>
    <p ng-show="loading == 2">Response: {{response}}</p>
</form>

<div id="lists" ng-controller="GetLists">
    <ul>
        <li ng-show="loading">Loading...</li>
        <li class="list" ng-repeat="list in lists">
            <b>{{list.id}}</b> : {{list.title}}
        </li>
    </ul>

</div>

JS:

function NewList($scope, $http) {
    $scope.formData = { };
    $scope.placeholders = { "title" : "List title" };
    $scope.loading = 0;
    $scope.submit = function() {
        $scope.loading = 1;
        $http.post(window.apiBase + 'lists/create', this.formData)
            .success(function(response) {
                $scope.response = response;
                $scope.loading = 2;
            });
    }
}
function GetLists($scope, $http) {
    $scope.loading = true;
    $http.get(window.apiBase + 'lists/all').success(function(response) {
        $scope.lists = response.lists;
        $scope.loading = false
    });
}

What I'm trying to achieve, is upon form submit, refresh the lists. Meaning, when .success() hits in NewList, call GetList and make it happen again. How do I achieve this?

4

0 回答 0