我试图在我的一个视图中提取已记录的信息,以便我可以在需要时更新它。我已经尝试了所有我能想到的东西,而且信息不会填入表格中。当我点击链接时,它会转到该公司的正确ID号的页面,但数据不会填充。
这是我的代码:
SVC:
function getCompany(companyId) {
return $http.get("api/collections/companies/" + companyId);
}
function editCompany(company) {
$http.put("api/collections/companies/" + company._id, company).then(function (res) {
$rootScope.$broadcast("company:updated");
$log.info("company:updated");
});
}
Ctrl:
companiesSvc.getCompany($routeParams.companyId).success(function (company) {
$timeout(function () {
$scope.company = company;
});
});
$scope.editCompany = function (company) {
console.log(company);
companiesSvc.editCompany(company).then(function () {
$location.path('/admin/companies');
});
};
查看:
<form ng-submit="editCompany(company)">
<input type="text" data-ng-model="company.title" value="company.title"><br>
<input type="text" data-ng-model="company.url" value="company.url"><br>
<input type="text" data-ng-model="company.location" value="company.location"><br>
<input type="text" data-ng-model="company.phoneNumber" value="company.phoneNumber"><br>
<input type="email" data-ng-model="company.email" value="company.email"><br>
<textarea name="" id="" cols="30" rows="10" data-ng-model="company.technologies" value="company.technologies">{{company.technologies}}</textarea><br>
<button type="submit">Update</button>
<a href="#/admin/companies"><button>Cancel</button></a>
</form>
答案 0 :(得分:0)
由于您使用异步函数更新范围(对吗?),我猜您需要使用$ timeout(需要成为控制器的依赖项)。
$timeout(function() {
$scope.company = company;
});