关于angular.js中的$resource中的问题。
伊谢尔伦
伊谢尔伦 2017-05-15 17:01:49
0
3
490

就比如下面这段代码好了:

angular.module('myApp').factory('Entry', function($resource){
    return $resource('/api/entries/:id', {id:'@_id'},{
        update: {
          method: 'PUT'
        }
    });
});

这里面的/api/entries/:id这个:id是什么意思啊?{id:'@_id'}还有这个@_id又表示什么意思呢?为什么前面多加了一个_了,我知道好像$resource在保存数据的时候会自动增加一个属性就是_id,但是这前前后后到底有什么因果关系呢?
伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全員に返信(3)
世界只因有你

ngResource を使用したことがありませんが、ご招待いただきありがとうございます。 ngResource

那我就按序回答吧

/api/entries/:id里,:id表示什么意思”

答: :id是一个占位符行为,意思是,在你真正发起请求时,该位置会被真正传入的的参数所替换。譬如:/api/entries/9970

"第二个参数{id:'@_id'}里,@_id又是什么意思"

答: 第二个参数是默认参数。如果以@开头,则表示真正请求时,会从你传入的对象中找@后面的的字段,这里就是从你传入的对象中找_id字段对应的值,并替换URL里的:id,形成真正的URL。

最后,ngResource

それでは順番にお答えしていきます🎜

/api/entries/:id:id は何を意味しますか?」

🎜回答: :id はプレースホルダーの動作です。つまり、実際にリクエストを開始すると、その位置が実際に渡されたパラメーターに置き換えられます。例: /api/entries/9970🎜

「2 番目のパラメータ {id:'@_id'}@_id は何を意味しますか?」

🎜回答: 2 番目のパラメータはデフォルトのパラメータです。 @ で始まる場合、実際のリクエストが行われたときに、渡したオブジェクトから @ 以降のフィールドが検索されることを意味します。ここでは、それが検索されます。渡したオブジェクト。 _id フィールドに対応する値で、URL 内の :id を置き換えて実際の URL を形成します。 🎜 🎜最後に、ngResource のドキュメントはあまりよく書かれていませんが、私が述べた内容が含まれています。理解できない点がある場合は、ドキュメントを注意深く読んで、さらに実験を行って結果を比較することをお勧めします🎜
いいねを押す +0
迷茫

長い間使用していませんでした$resource了,不过'/api/entries/:id'是请求数据的路由,:id会被后面的{id:'@_id'}中的@_id替代,:idこれはルーティングパラメータです。次のようになります。長い間使用していなかったので、忘れていました

いいねを押す +0
滿天的星座

ご招待ありがとうございます。

実際にはほとんど使いません $resource这个东西,与ui-router も実は似ていますが、端的に言えばルート変更時のパラメータの受け渡しの問題ですが、形式が異なります。 @leftstick が詳しく言ってくれたので、これ以上説明する必要はありません。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート