मैं एक समस्या के बारे में एक दिन के लिए अटक गया हूं जिसे मैं देख नहीं सकता।
मैं एक users.js.coffee फ़ाइल में निम्न कोड है:
app = angular.module("app", ["ngResource"])
app.config ['$routeProvider', '$locationProvider', ($routeProvider, $locationProvider) ->
$locationProvider.html5Mode(true)
$routeProvider.when('/users/:id', {templateUrl: '/users/:id.json', controller: UserCtrl})
$routeProvider.when('/users/:id/videos', {templateUrl: '/users/:id/videos.json', controller: UserCtrl})
]
app.factory "User", ["$resource", ($resource) ->
$resource("https://stackoverflow.com/users/:id", {id: "@id"}, {
show: {method: "GET"},
videos: {method: "GET", isArray:true}
})
]
@UserCtrl = ["$scope", "$location", "$route", "http", "$routeParams", "User", ($scope, $location, $route, $http, $routeParams, User) ->
console.log($location)//LocationUrl {$$parse: function, $$compose: function, $$rewriteAppUrl: function, $$protocol: "http", $$host: "localhost"…}
console.log($route)//Object {routes: Object, reload: function}
console.log($routeParams)//Object {}
]
क्यों $ होगा routeParams एक खाली वस्तु हो सकता है? यदि मैं एक दृश्य में $.c.current.params को कॉल करता हूं, तो यह उचित पैरामीटर दिखाता है। लेकिन नियंत्रक में नहीं। और भी, मैं नियंत्रक में $.c.current.params को कॉल नहीं कर सकता, क्योंकि "वर्तमान" अभी तक परिभाषित नहीं है।
यह आपके प्रश्न से संबंधित नहीं है, लेकिन मुझे नहीं लगता कि आप 'answer_with' का उपयोग करते समय' to_json' का उपयोग कर सकते हैं। आपको एक वस्तु प्रदान करनी है, और आपका नियंत्रक अनुरोधित प्रारूप के अनुसार उपयुक्त उत्तरदाता को कॉल करेगा। –
मुझे लगता है कि आप आम तौर पर सही हैं, जब तक कि मुझे @ user.to_json जैसे किसी संगठन को शामिल करने की आवश्यकता न हो (इसमें शामिल हैं: वीडियो)। मेरे पास इसे तब तक स्पष्ट करने के लिए है जब तक कि मुझे पता न लगे कि मुझे उचित प्रतिक्रिया क्यों नहीं मिल रही है। – jflores
किसी जेसन प्रतिक्रिया में एसोसिएशन को शामिल करने का पसंदीदा तरीका आपके मॉडल में 'as_json' को ओवरराइड करना है। आपकी समस्या के अनुसार, क्या आप अपने ब्राउज़र को xhr अनुरोधों को लॉग करने के लिए सेट कर सकते हैं (क्रोम इसे करता है) और यहां पोस्ट करें जो वास्तव में आगे आता है? –