2014-11-14 102 views
0

不知道我是否正确使用Angular。我基本上想做一个简单的链接/故事分享网站。

var Story = $resource("api/stories/:id", {}, { 
    query: { method: "GET", isArray: false } 
    }); 

    Story.query().$promise.then(function (data) { 
    $scope.stories = data.stories; 
    $scope.test = 1; 
    }); 

    $scope.submitForm = function(formData) { 
    Story.save({}, formData, function(data) { 
     $scope.$apply(function() { 
     $scope.stories = data.stories; 
     $scope.test = 2; 
     }); 
    }); 
    } 

更改$scope.test得到体现,而不是故事。

编辑:唔所以很明显,如果我删除“NG控制器”

<ul ng-controller="storyController"> 
    <li ng-repeat="story in stories">{{ story.title }}</li> 
    <p>{{ test }}</p> 
</ul> 

一切正常,现在.....我什至不知道为什么....

+0

你如何使用'故事'? – apneadiving 2014-11-14 14:29:04

+0

在浏览器中启动调试并查看“数据”对象 – 2014-11-14 14:41:25

+0

我只是使用ng-repeat来遍历所有故事 – 2014-11-14 14:54:29

回答

0

query()方法,您将$scope.stories设置为数组,但是,看起来您尝试将$scope.stories设置为我假设的单个故事对象。当$scope.stories更改时,您希望看到什么?故事列表中的新故事?如果是这样,您需要执行以下操作:

$scope.stories.push(data.stories); 

您不替换数组,您正在为其添加新索引。

+0

我的创建api方法返回一个新的故事列表,我的意图是将当前范围故事设置为新的名单。我在保存之后假设它收到一组故事+我刚刚创建的故事。然后,如果我将scope.stories设置为新列表,它将会更新 – 2014-11-14 15:05:20

0

好的很明显,答案是我已经定义了ng-view +一个将storyController分配给该视图的路径。我基本上通过添加一个ng-controller指令来分配它两次。