gpt4 book ai didi

javascript - 尝试显示名称 Angular

转载 作者:太空宇宙 更新时间:2023-11-04 02:22:08 24 4
gpt4 key购买 nike

我仍在尝试学习Angular JS,并且在显示刚刚输入数据库以在下一部分中显示的用户时遇到问题。我可以显示其他用户,但在用户添加后返回给我的数据不会显示出来!我学到了很多出错的方法,有人可以告诉我如何做对吗?这是我的代码。

初始启动页面

<div ng-controller="usersController">
<h1>Hello!</h1>
<h1>Please enter your name to join and share your ideas</h1>
<form>
<input type="text" ng-model="newUser.name">
<button ng-click="addUser()">Enter</button>
</form>

Angular 路线

var myApp = angular.module('myApp', ['ngRoute']);
myApp.config(function ($routeProvider) {
$routeProvider
.when('/', {
templateUrl: '../partials/main.html'
})
.when('/dashboard', {
templateUrl: '../partials/dashboard.html'
})
.otherwise({
redirectTo: '/'
});
});

我要显示当前用户和添加的所有用户的页面

<div ng-controller="usersController">
<h1>Welcome</h1>
<h1 ng-bind="currentUser.name"></h1>
<ul ng-repeat="user in allUsers">
<li ng-bind="user.name"></li>
</ul>

我的用户 Controller

myApp.controller('usersController', function ($scope, usersFactory) {

var getUsers = function() {
usersFactory.getUsers(function (data) {
$scope.allUsers = data;
})
}

$scope.addUser = function () {
usersFactory.addUser($scope.newUser, function (data) {
$scope.currentUser = {'name': data.name};
})
}

getUsers();
})

我的用户工厂

myApp.factory('usersFactory', function ($http, $location) {

var factory = {};

factory.getUsers = function (callback) {
$http.get('/show_users').success(function (users) {
callback(users);
})
}

factory.addUser = function (data, callback) {
$http.post('/new_user', data).success(function (user) {
callback(user);
$location.path('/dashboard');
})
}
return factory;
})

非常感谢任何帮助!

最佳答案

每次添加新用户时都会调用 getUsers() 来更新allUsers

$scope.addUser = function () {
usersFactory.addUser($scope.newUser, function (data) {
$scope.currentUser = {'name': data.name};
getUsers();
})
}

关于javascript - 尝试显示名称 Angular,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32774875/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com