如何解析没有转义双引号的Angular $ http响应?

时间:2019-04-04 19:27:33

标签: javascript angularjs string http escaping

我有一个从搜索端点返回的对象,该端点的属性可以具有这样的值(请注意字符串中的双引号):

{
     ...,
    description: "24" curtain rod",
     ...
}

当我使用以下命令捕获响应时:

promise
  .then(function(data) {
    vm.displayData = data.search_results;
  })

注意:正确返回了JSON,转义如下:

{..., "description": "24\" curtain rod", ... }

我的问题是,我无法为自己的一生弄清楚为什么以后再这样做:

console.log(vm.displayData)

在浏览器控制台中,description属性设置为undefined。如果我仅使用.then()data.search_results[0].description块中直接引用此属性(假定其在数组中为第一个),它将正确地 打印24" curtain rod。通过在我的transformResponse请求中定义$http属性,我发现了一种潜在的解决方法,但我觉得这是一种更容易,更简单的方法。那会是什么?

PS:对于某些有用的上下文,vm.displayData对象被赋予UI-Grid以呈现数据表。显示说明的表格单元格也可以在md-input元素中进行内联编辑。

0 个答案:

没有答案