【问题标题】:How to prevent axios to sort by key?如何防止axios按键排序?
【发布时间】:2019-10-10 00:34:33
【问题描述】:

我希望年份仍以 desc 顺序显示。在我的要求中,年份并正确排序。

我的 PHP 控制器返回一个像这样的 json:

{  
   "2018":[  
      {  
         "id":25071,

      },
      {  
         "id":35037,
      }
   ],
   "2017":[  
      {  
         "id":20449,
      },
      {  
         "id":25797
      }
   ],
   "2016":[  
      {  
         "id":20419,
      },
      {  
         "id":25778
      }  
   ]
}

但是当我进入我的 vue 组件时

getYears: function(){
    axios.get('/blablabla/').then(
        response => {
            console.log(response.data);
            this.years=response.data;
        }
    );
}

我得到了这个结果

{2008:数组(1),2010:数组(5),2011:数组(7),2012:数组(7),2013:数组(4),2014:数组(5),2015:数组( 8),2016:数组(4),2017:数组(6),2018:数组(6)} 2008 年:(...) 2010: (...) 2011: (...) 2012: (...) 2013 年:(...) 2014 年:(...) 2015 年:(...) 2016 年:(...) 2017 年:(...) 2018 年:(...)

如何防止它改变顺序?

非常感谢!

【问题讨论】:

  • 这很奇怪,你在客户端有排序吗?也许在某些 axios 全局配置中?
  • 如果你需要一个特定的顺序,也许使用一个数组?
  • 该对象很方便,因为我可以将其显示在表格中。但是我没有添加任何具体的配置,没有
  • 实际上,在一年的工作之后添加 ' '(一个空格)。 (但将其转换为字符串不会)。奇怪,但我想我可以用这个...... :)
  • 如果这是一个 mongodb 请求,您可以通过将 .sort({year : -1}) 附加到查询语句来投影路由中的排序。假设 year 是保存年份的文档的名称

标签: php laravel vue.js axios


【解决方案1】:

这不是 axios 的问题。在 ES2015 中,按插入顺序返回的非整数键。浏览器的东西。你把它变成了一个字符串,所以它不再是一个整数了。

如果您想了解更多信息:click here

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-08-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-04
    • 2020-07-12
    相关资源
    最近更新 更多