Skip to content

Instantly share code, notes, and snippets.

View spencercarli's full-sized avatar

Spencer Carli spencercarli

View GitHub Profile
@spencercarli
spencercarli / index.js
Created February 12, 2016 02:21
Easily Connect React Native to a Meteor Server - Connecting React Native App to Meteor - index.js
/*
* Removed from snippet for brevity
*/
import DDPClient from 'ddp-client';
let ddpClient = new DDPClient();
export default React.createClass({
getInitialState() {
return {
@spencercarli
spencercarli / index.js
Created February 12, 2016 02:26
Easily Connect React Native to a Meteor Server - Making a Subscription from React Native - index.js
/*
* Removed from snippet for brevity
*/
componentDidMount() {
ddpClient.connect((err, wasReconnect) => {
let connected = true;
if (err) connected = false;
this.setState({ connected: connected });
this.makeSubscription();
@spencercarli
spencercarli / index.js
Created February 12, 2016 02:26
Easily Connect React Native to a Meteor Server - Making a Subscription from React Native - index.js
/*
* Removed from snippet for brevity
*/
export default React.createClass({
getInitialState() {
return {
connected: false,
posts: {}
}
@spencercarli
spencercarli / index.js
Created February 12, 2016 02:27
Easily Connect React Native to a Meteor Server - Making a Method Call from React Native - index.js
handleIncrement() {
ddpClient.call('addPost');
},
handleDecrement() {
ddpClient.call('deletePost');
},
@spencercarli
spencercarli / ddp.js
Created February 14, 2016 20:35
Meteor Authentication from React Native - Creating a User
// RNApp/app/ddp.js
import DDPClient from 'ddp-client';
let ddpClient = new DDPClient();
ddpClient.signUpWithEmail = (email, password, cb) => {
let params = {
email: email,
password: password
};
@spencercarli
spencercarli / ddp.js
Created February 14, 2016 20:37
Meteor Authentication from React Native - Signing In with Email and Password
// RNApp/app/ddp.js
/*
* Removed from snippet for brevity
*/
ddpClient.loginWithEmail = (email, password, cb) => {
let params = {
user: {
email: email
@spencercarli
spencercarli / ddp.js
Created February 14, 2016 20:38
Meteor Authentication from React Native - Signing In with Username and Password
// RNApp/app/ddp.js
/*
* Removed from snippet for brevity
*/
ddpClient.loginWithUsername = (username, password, cb) => {
let params = {
user: {
username: username
@spencercarli
spencercarli / ddp.js
Created February 14, 2016 20:39
Meteor Authentication from React Native - Storing the User Data
// RNApp/app/ddp.js
import DDPClient from 'ddp-client';
import { AsyncStorage } from 'react-native';
/*
* Removed from snippet for brevity
*/
ddpClient.onAuthResponse = (err, res) => {
@spencercarli
spencercarli / ddp.js
Last active February 14, 2016 20:52
Meteor Authentication from React Native - Signing In with a Resume Token - ddp.js
// RNApp/app/ddp.js
/*
* Removed from snippet for brevity
*/
ddpClient.loginWithToken = (loginToken, cb) => {
let params = { resume: loginToken };
return ddpClient.call("login", [params], cb)
@spencercarli
spencercarli / ddp.js
Created February 14, 2016 20:41
Meteor Authentication from React Native - Signing Out
// RNApp/app/ddp.js
/*
* Removed from snippet for brevity
*/
ddpClient.logout = (cb) => {
AsyncStorage.multiRemove(['userId', 'loginToken', 'loginTokenExpires']).
then((res) => {
ddpClient.call("logout", [], cb)