javascript - 使用 JavaScript 创建上一个和下一个按钮
问题描述
使用 AngularJS,我得到的数据以数组的形式出现,其中包含两个对象。我是新手,并试图解决这个问题。
data[
{
"something":"something1",
"something":"something1",
"something":"something1",
},
{
"something":"something2",
"something":"something2",
"something":"something2",
}
]
我想要做的是创建一个上一个和下一个按钮,当单击第一个对象时,它将变为第二个对象。我知道使用:
current = response.data[0];
会给我第一个数组对象。我试过这样的事情:
var current = 1
const getSessions = () => {
loginService.getUser().then((response) => {
var user_id = response.data.id;
console.log("getUser returning this => ", response.data);
loginService.getUserSessions(user_id).then((response) => {
current = response.data[0];
$scope.sessions = response.data;
})
})
};
getSessions();
$scope.nextPage = function() {
current++;
getSessions();
}
$scope.prevPage = function (){
if(current > 1){
current--;
getSessions();
}
}
但就像我说的那样,我不确定该怎么做。
解决方案
我相信您需要增加/减少您的计数器,然后将 current 设置为您的会话数组的 currentIndex。我没有测试这段代码,但我希望这会有所帮助。
var current;
var currentIndex = 0;
const getSessions = () => {
loginService.getUser().then((response) => {
var user_id = response.data.id;
console.log("getUser returning this => ", response.data);
loginService.getUserSessions(user_id).then((response) => {
$scope.sessions = response.data;
current = $scope.sessions[0]
})
})
};
getSessions();
$scope.nextPage = function() {
if ( currentIndex < ($scope.sessions.length - 1) ) {
currentIndex++;
current = $scope.sessions[currentIndex]
}
}
$scope.prevPage = function (){
if ( currentIndex > 0 ) {
currentIndex--;
current = $scope.sessions[currentIndex]
}
}
推荐阅读
- python-3.x - Python 3:以字节为单位的 x 作为单词
- ffmpeg - FFmpeg 中分段时间的使用
- git - 有没有办法撤消“git restore”命令
- prometheus-alertmanager - Grafana Loki 不会在 alertmanager 上触发或推送警报
- python - 如何删除 numpy 数组中频率较低的行并在 python 中保持数组的顺序
- django - 为 django 中的方法排序
- go-modules - 如何将 go 模块指向尚未推送到 Git 的本地模块
- sql - sql management studio 图打不开
- c++ - 截断数组的最后几个元素
- vhdl - VHDL - 使用对象“x”但未声明