2016-08-09 2 views
0

Meteor 클라이언트 코드는 사용자 서명을 위해 캔버스를 표시하고, 서명해야 할 미래의 HTML 리포트 페이지에 나중에 삽입하기 위해 사용자 콜렉션에 저장할 옵션을 표시합니다.html 캔버스에서 mongodb 콜렉션으로 데이터 저장

이 작업을 수행하기위한 일반적인 개요 및 수행 방법은 무엇입니까?

//client 
let imgData = ctx.getImageData(0, 0, width, height); 
Meteor.call('saveImageToUser', imgData); 

//server 
Meteor.methods({ 
    'saveImageToUser': (img) => { 
    Meteor.users.update(userId, { 
     signature: img 
    }) 
    } 
}); 
+0

Meteor 메소드는 클라이언트와 서버 모두 lib에 배치 될 수 있습니다. Meteor는 낙관적 인 업데이트를 수행합니다. s minimongo 먼저, 그리고 나중에 서버의 mongo를 업데이트합니다. – vijayst

답변

1

내 웹 응용 프로그램 중 하나에 같은 일을했습니다.

내 HTML :

<canvas id="simple_sketch" width="400" height="400"></canvas> 

내 클라이언트 JS :

var canvas = $(#simple_sketch")[0].toDataURL(); 
Meteor.call('saveImageToUser', canvas); 

내 방법은 (당신이 사용자의 profile 객체에 저장해야합니다 때문에 유성의 사용자 개체에 기억

'saveImageToUser' : img => { 
    Meteor.users.update(userId, { 
     'profile.signature' : img 
    }) 
} 
.
+0

프로필에 저장해야하는 이유는 무엇입니까? 이전에 프로필 개체 외부에 저장했습니다. 제대로 작동합니까? –

+0

@ FredJ. 사용자의 프로필 개체, 사용자 이름, 전자 메일 및 _id 만 자동으로 게시됩니다. 값을 사용자 객체의 키에 쓸 수 있지만 수동으로 값을 클라이언트에 다시 가져와야합니다. – Nate

관련 문제