将原始参数传递给角度

时间:2015-04-05 20:49:07

标签: angularjs ionic

我正在构建一个带有离子和角度的小型移动应用程序博客但是当我尝试使用手动注入的params进行资源查询时,我有一个糟糕的url字符串。意思是角度没有正确地传递我的语法,或者我犯了一个错误的错误。

这是我的代码

angular.module('starter.posts', ['ionic','ngResource'])

    .factory('Post', function ($resource) {
        return $resource('http://example.org/wp-json/:params');
    });

app.controller('HomeCtrl', function ($scope, $state, $ionicSideMenuDelegate, Post) {
    "use strict";
    /* Items for left side menu. */
    $scope.posts = Post.query({params: "posts?filter[posts_per_page]=3"})

})

并且错误日志显示以下错误

http://example.org/wp-json/posts%3Ffilter%5Bposts_per_page%5D=3 Failed to load resource: the server responded with a status of 404 (Not Found)

这只是意味着它没有正确翻译网址。我该如何解决这个问题,以便网址可以采用波纹管格式

http://example.org/wp-json/posts?filter[posts_per_page]=3

我是角色试图用角度模拟整个wordpress博客的新手。

2 个答案:

答案 0 :(得分:0)

我通常做这样的事情,传递一个js对象:

usersFactory.get = function (request) {
                var operation= $http({url: urlBase, method:'get', params:request });

也许您应该将帖子添加到您的资源网址

$resource('http://example.org/wp-json/posts:params');

传递像这样的对象

var filter={};
filer.posts_per_page=3

作为你的参数

答案 1 :(得分:0)

我能够通过使用下面的代码来确定正确的语法,

 Post.query({'filter[posts_per_page]': 20, 'page' : $scope.pageNum}, function (data, responseHeaders)