2017-08-15 58 views
6

tanımlı değil. 'PropTypes' is not defined. (no-undef) aşağıdaki linting hatası alıyorum. İşte 'Proptypes' Ben yeni yardımıyla tepki kuruyorum

soruna neden olan kod şudur:

import React, { Component } from 'react'; 
import PropTypes from 'prop-types'; 

class Routers extends Component { 
    static propTypes = { 
    history: PropTypes.object.isRequired 
    }; 

... 

Ben react/prop-types kural ile oynamak çalıştı, ama boşuna.

+0

Burada bir şey göremiyorum, webpack kullanıyor musunuz? Yapılandırmayı paylaşabilir misiniz? – Purgatory

+0

@Purgatory [create-react-app] (https://github.com/facebookincubator/create-react-app) webpack kullanıyor olduğuna inanıyorum. Ama ben webpack'i ayrı kullanmıyorum. – Lars

+0

"PropTypes" tanımlı değil "veya" propTypes "tanımlı değil" – Purgatory

cevap

4

bu konuda comment göre.

create-react-app ile birlikte gönderilen eslint sürümünü kullanmanız gerektiğinde, eslint 4.x'u yüklediğinizden anlaşılıyor. El ile yüklediğiniz tüm eslintleri kaldırmanız ve repo ile birlikte gelenleri kullanmanız gerekir.

+0

Bu sorun olduğu ortaya çıktı. 'Tepki oluştur' uygulaması paketinin yapılandırmasını açmak için 'npm run eject 'çalıştırdım. Bundan sonra, package.json'u eslint versiyon 3'ü kullanmam için düzenledim. – Lars

-3

Lütfen paket tipi npm paketini kurun - tepki 1.15 ve üstü ayrı paket üzerinde yaratın.

Here to install package

+0

Yukarıda ayrı ayrı prop-types paketini zaten ithal ettiğini görebilirsiniz. – Purgatory

+0

Pakete sahip olan npm paketine sahibim. – Lars

-1

Sadece (sınıfın dışında) Dersten sonra PropTypes yerleştirebilirsiniz:

Routers.propTypes = { 
    history: PropTypes.object.isRequired 
}