angularjs使用.map不是函数
angularjs using .map is not a function
试图操作response.data以使用.map
在响应中添加isLoggedin = true
,但它会给我一个"map"的错误,这不是一个函数。
vm.dataResponse = response.data.map(function(data){
data.isLoggedIn = false;
});
尝试这样做,这样我就可以有一个数据来参考用户是否登录(登录/注销)。或者我可以使用$rootScope
,但我认为使用全局并不理想?
$rootScope.isLoggedIn = false;
然后在我的vm.login函数中,$rootScope
将被设置为true
,这是有效的,但当我刷新页面时,它会返回false。
response.data需要是一个数组才能使用.map
.map将通过迭代现有数组的所有值来创建一个新数组,并在数组的每个成员上返回所提供回调的结果,例如
var oldArray = [1,2,3,4];
var newArray = oldArray.map(function(number){
return number * 2;
});
//newArray = [2,4,6,8]
因此,在您的示例中,即使response.data是一个数组,它也不会起作用,因为您没有从回调中返回任何内容。
如果response.data是一个对象,您可以直接添加属性,例如
response.data.isLoggedIn = false;
如果你能按照developer033的建议,提供response.data的console.log的输出,这将有助于确定如何最好地处理它
编辑:
因为您只是返回一个字符串,请尝试:
vm.dataResponse={username:response.data,isLoggedIn:true}
相关文章:
- 回调函数中传递参数的困难(Google Map API Markers)
- 鉴于 for..在构造中,库提供的函数(如 jQuery.map() 或 _.each())有什么用
- 在.map函数中使用react道具
- Map函数没有't迭代所有子项
- 在CouchDB Map函数中发出日期时-对日期对象调用的内容
- 在javascript函数中访问Google map api
- Array.from 在 Array#map 中不能用作直接回调函数
- 如何将回调函数添加到 .map 方法
- TypeError:map[msg[1]]不是函数
- angular google maps TypeError:$scope.map.control.refresh不是函数
- MongoDB map/reduce,forEach不是一个函数
- 获得“;jvm.Map不是构造函数“;用于jvectormap
- Javascript作用域规则和mongo-map/reduce函数
- map() 函数如何在数组上工作
- Javascript如何使用高阶函数和Map/Reduce函数来汇总多个数组
- React.jsthis.props.data.map()不是函数
- 使用map函数对具有数字数组的字符串进行解码
- 在 mongo map 中调用外部 javascript 函数(对象)或减少上下文的可能方法
- 使用下划线 js map 函数时,Mongo 引用字段未实例化
- Javascript vs Python 关于 Python 'map()' 函数