2017-10-16 1 views
0

J'utilise Turbo que vous pouvez trouver plus d'informations à ce sujet ici: https://www.turbo360.co/docsTurbo, ajouter params d'afficher ou d'autres types de données Turbo ne fonctionne pas

Ce que je suis en train de faire est d'attacher un paramètre à un poste avant qu'il ne soit créé. Dans ce cas, j'essaie de joindre un profil. Je ne reçois aucune erreur et de ce que je vois le param passe très bien, mais quand je me déconnecte le poste profile param n'est pas là.

Voici la création du poste:

createPost(params) { 
    const { currentUser } = this.props.user; 
    if (currentUser == null) { 
     swal({ 
     title: 'Oops...', 
     text: 'Please Login or Register before posting', 
     type: 'error' 
     }); 
     return; 
    } 

    params['profile'] = currentUser; 
    console.log(params); 
    this.props 
     .createPost(params) 
     .then(data => { 
     swal({ 
      title: 'Post Created', 
      text: `Title: ${data.title}`, 
      type: 'success' 
     }); 
     }) 
     .catch(err => console.log(err)); 
    } 

Voici le createPost d'action:

createPost: params => { 
    return dispatch => { 
     return dispatch(TurboClient.createPost(params, constants.POST_CREATED)); 
    }; 
    }, 

Voici la fonction TurboClient createPost:

const postRequest = (resource, params, actionType) => { 
    return dispatch => 
    turbo({ site_id: APP_ID }) 
     .create(resource, params) 
     .then(data => { 
     if (actionType != null) { 
      dispatch({ 
      type: actionType, 
      data: data 
      }); 
     } 

     return data; 
     }) 
     .catch(err => { 
     throw err; 
     }); 
}; 

const createPost = (params, actionType) => { 
    return postRequest('post', params, actionType); 
}; 

Maintenant, d'ici vous pouvez voir où je consigne les paramètres, cela renvoie: enter image description here

Voici ce que le poste ressemble à une fois qu'il est créé: enter image description here

+0

Je vois une clé de profil dans votre capture d'écran si –

+0

Ce sont les paramètres enregistrés avant la création de la publication. Lorsque le message est créé, il n'est pas là, laissez-moi ajouter que dans un edit –

+0

pouvez-vous poster le code de 'this.props.createPost (params)' alors? –

Répondre

1

On dirait que vous essayez de créer un objet Post. Dans votre méthode createPost, vous renvoyez: postRequest('post', params, actionType);

En utilisant le mot 'post' ici, vous le créez en tant qu'objet Post, qui a un schéma très spécifique qu'il suit. Si vous souhaitez changer cela, vous pouvez essayer de créer un objet personnalisé en faisant quelque chose comme ceci, par exemple:

postRequest('randomName', params, actionType);

espoir qui aide.

+0

Merci qui fonctionne! –