Javascript 带有参数和成功回调的角度服务工厂

Javascript 带有参数和成功回调的角度服务工厂,javascript,angularjs,Javascript,Angularjs,传递参数所需的语法会中断成功回调。答案是参数。当不使用额外的块查询:函数(answer)时,我可以使成功回调正常工作{ 这是服务 .factory('Answer',function($resource, $cookies) { return { query: function(answer) { return $resource('/api/answers/', {'question_id': $cookies.question_id, 'answer': 'test'},

传递参数所需的语法会中断成功回调。答案是参数。当不使用额外的块查询:函数(answer)时,我可以使成功回调正常工作{

这是服务

.factory('Answer',function($resource, $cookies) {
return {

query: function(answer) {

  return $resource('/api/answers/', {'question_id': $cookies.question_id, 'answer': 'test'},
      {
         query: { method: 'POST', isArray: false}
  }).query();

}
} })

答案是这样的。谢谢戈登·博库斯和格伦迪。这节省了我很多时间

回答。询问(回答)


您正在将参数传递给factory查询函数,而不是资源查询函数。如果你想保持相同的结构,你需要更新你的工厂

.factory('Answer',function($resource, $cookies) {
return {

query: function(answer, callback) {
  var result; 
  return result = $resource('/api/answers/', {'question_id': $cookies.question_id, 'answer': 'test'},
      {
         query: { method: 'POST', isArray: false}
  }).query(function() {
    callback(result);
  });

}

查看此页面上的示例信用卡资源$resource

试试
'answer':answer
谢谢。这只是个玩笑。我正在研究一种叫做承诺的东西。承诺是前进的道路。当$resource返回时,设置会更加清晰。再次感谢。我是安格拉斯的新手。
.factory('Answer',function($resource, $cookies) {
return {

query: function(answer) {

      return $resource('/api/answers/', {'question_id': $cookies.question_id, 'answer': answer},
      {
        query: { method: 'POST', isArray: false}
      }).query(function(result) {
        console.log(result);
      });

    }
  }
})
.factory('Answer',function($resource, $cookies) {
return {

query: function(answer, callback) {
  var result; 
  return result = $resource('/api/answers/', {'question_id': $cookies.question_id, 'answer': 'test'},
      {
         query: { method: 'POST', isArray: false}
  }).query(function() {
    callback(result);
  });

}