2016-05-27 11 views
12

Mam przedmiot, który otrzymuje wartość z wartości rekwizytów. Ta wartość nie jest poprawnie ustawiona zgodnie z komunikatem o błędach reagowania.Błąd podczas aktualizacji właściwości "X" w węźle cienia typu: RCTView

export default class BarItem extends Component { 

constructor (props) { 
    super(props); 
} 

propTypes : { 
    color: PropTypes.string, 
    barInterval: PropTypes.number, 
}; 
    const {color, barInterval} = this.props; 

render() { 
    const baseStyle = { 
     backgroundColor: color, 
     marginRight: barInterval 
    }; 

    return (<View style={Object.assign({}, baseStyle, {height: (empty * unitHeight)})]} />); 
    } 
} 

Zastanawiam się, dlaczego nie mogę zaktualizować wartość, a co cieniem węzeł jest i jak temu zapobiec w przyszłości?

EDYCJA: co zrobić z wartością "barinterval" będącą łańcuchem znaków, ale przyjmującym tylko liczby. (podano niewłaściwą wartość?)

+0

co to jest "baseStyle"? czy możesz pokazać? – Cherniv

+0

nic wspólnego z 'baseStyle' dzięki za myślenie ze mną. –

Odpowiedz

13

Błąd wyjaśnia, że ​​oczekuje zmiennej w liczbie całkowitej, a nie w wartości ciągu. <BarItem barInterval={'5'} /> jest nieprawidłowy, ale <BarItem barInterval={5} /> jest poprawny, ponieważ wartość marginRight wymaga liczby całkowitej do pracy, ponieważ jest to część arkusza stylów.

+0

Dzięki. Pomogło. –

Powiązane problemy