2
中定义的数组为了学习,我正在尝试使用Angular 2 + Django Rest Framework创建一个简单的Todo应用程序。
为了立即显示保存在输入表单中的项目,我想要实现获取最新的项目并显示它的功能。
如何将部分获得的API添加到组件
功能获得此API中todo.service.ts描述
@Injectable()
export class TodoService {
todo: Todo[] = [];
newtodo: NewTodo[] = [];
private Url = `http://127.0.0.1:8000/api/todo/`
private headers = new Headers({'Content-Type': 'application/json'});
constructor(
private http: Http
){}
// Acquire one latest todo added
getNewTodo(): Promise<NewTodo[]> {
return this.http
.get(this.Url+"?limit=1")
.toPromise()
.then(res => res.json())
.catch(this.handleError)
}
组件在todo.component.ts描述
@Component({
selector: 'todo-list',
templateUrl: '../templates/todo-list.component.html',
styleUrls: ['../static/todo-list.component.css']
})
export class TodoListComponent {
todos: Todo[] = [];
newtodo: NewTodo[] = [];
newtodos: Todo[] = [];
@Input() todo: Todo = new Todo();
save(): void {
this.todoService
.create(this.todo);
}
}
我想教点是以下几点。
1.执行组件的save()时,执行服务的getNewTodo(),并将获得的返回值存储在数组newtodo
中。
2.由于只有结果部分对于获取的JSON是必需的,请将结果部分拉出,将其推送到数组newtodos
并将其传递给html。
对1,我认为你应该写在保存下面的说明()
this.todoService
.getNewTodo()
.then(newtodo => this.newtodo = newtodo);
我不明白写什么约2 我想告诉你如何解决这个问题。