2017-01-30 13 views
13

bir nesne oluşturarak ve ardından yeni oluşturulan nesnenin ayrıntıları sayfasına ekranı yönlendiriyor ve bu hatayı alıyorum am: (id: 0):Apollo istemcisi bana bir 'depo zaten bir id içeriyor' hatası veriyor - bu ne anlama geliyor? Bir tepki yerli projede

Olası işlenmeyen Promise Reddi Ağ hatası: Mağaza hatası: Uygulama, kimliği belirtilmemiş bir nesne yazmayı denedi, ancak mağaza zaten bu nesne için bir XYZ kimliği içeriyor.

Veritabanına baktığımda, öğenin önceki adımda düzgün bir şekilde oluşturulduğunu görüyorum. Aynı ekrana ve öğeye bir liste (gezinme ve yeniden yönlendirme işleminden sonra değil) gezinmek iyi görünüyor. Apollo mağazasının doğru kalmasını beklemek veya bir şekilde zamanlama yapmak zorunda mıyım?

GQL sarma Ben standart apollo istemcisi kullanarak @graphql bağlayıcı ediyorum

/: Burada

query getEvent($eventId: ID!) { 
    Event(id:$eventId) { 
     id 
     headline 
     photo 
     location 
     startTime 
     creator { 
     username 
     photo 
     } 
    } 
    } 
`; 

Ve sen de id eklemek zorunda bir kod parçacığı

@graphql(getEventGql,{ 
    options: ({route}) => { 
    console.log('route params', route.params); 
    return { 
     variables: { 
     eventId: route.params.eventId, 
     } 
    } 
    }, 
}) 

@connect((state) => ({ user: state.user })) 
export default class EventDetailScreen extends Component { 
... 

cevap

21

var creator alan:

query getEvent($eventId: ID!) { 
    Event(id:$eventId) { 
     id 
     headline 
     photo 
     location 
     startTime 
     creator { 
     id 
     username 
     photo 
     } 
    } 
    } 
+0

Yuvalanmış bir mülkte kimlik gerekmediği, ancak kök düzeyinde kimliği gerekli olduğu halde bu hata yardımcı oldu. Neden olsa da bir açıklaması için minnettar olurum. –

+0

@ ABCD.ca% 100 emin değilim, ancak bazı sonuçların önbelleğe alındığı görülüyor, bu yüzden, apollo istemcisinin onu almak için benzersiz tanımlayıcısını sağlamanız gerekiyor. Biraz mantıklı, ancak 1.0.0 sürümünden önce bu sorunu yaşamadım, bu yüzden geçici olarak 0.10.1'e geri döndüm – ViggoV

İlgili konular