평균 스택을 사용하고 있으며 내 Nodejs 서버 끝점에 동적으로 쿼리 매개 변수를 보내고 있습니다. 내 클라이언트 제어기 :의미 Nodejs JSON.parse 클라이언트에서 서버로 데이터 전달
쿼리 컨트롤러에 주입 한 값이다$http.get('/api/things',{params:{query:query}}).then(response => {
this.awesomeThings = response.data;
socket.syncUpdates('thing', this.awesomeThings);
});
. 이 (작동) 서버 컨트롤러 기능입니다 : 위의 작품
export function index(req, res) {
var query = req.query.query && JSON.parse(req.query.query)
Thing.find(query).sort({_id:-1}).limit(20).execAsync()
.then(respondWithResult(res))
.catch(handleError(res));
}
하지만 난이 한 번도 본 적이없는 것처럼 라인
var query = req.query.query && JSON.parse(req.query.query)
을 이해하려고 노력하고 (그리고 난 몰라 프로그래밍 배경에서 온). 나는 console.logged 쿼리를 사용하여 객체 (Mongodb에서 필요함)를 이해하지만, 최종 출력을 찾기 위해 console.logged (JSON.parse (req.query.query)) 또는 JSON.parse (query)를 호출하면 프로그램이 오류 메시지없이 작동을 멈춘다. 매우 이상하다. 누군가 위의 구문을 설명 할 수 있고 작동을 위해이 방법을 수행해야하는 이유가 있다면 큰 도움이된다. 추신 : JSON
export function index(req, res) {
var query = req.query.query && JSON.parse(req.query.query)
var que = JSON.parse(req.query.query)
Thing.find(query).sort({_id:-1}).limit(20).execAsync()
.then(respondWithResult(res))
.catch(handleError(res));
console.log("que"+que)
}
가능한 복제 [이중 앰퍼샌드와 과제 "&&"] (http://stackoverflow.com/questions/12878612/assignment-with-double-ampersand) – DAXaholic
이것이 유일한 코드입니다. 그렇게 코딩하지 않으면 작동하지 않습니다. 위의 코드는 실제 작업 코드에서 가져온 것입니다. 그 구문의 의미와 작동 원리에 대해 묻고 있습니다. –