2016-07-07 31 views
29

我得到這個代碼的錯誤。但是,更改爲react-native可以消除錯誤。你可以使用div與react-native?如果沒有,爲什麼這個錯誤如此晦澀......?期望一個組件類,得到[對象對象]

var React = require('react'); 
var ReactNative = require('react-native'); 
var { 
    StyleSheet, 
    Text, 
    View, 
} = ReactNative; 

let Auto = React.createClass({ 
    getInitialState: function() { 
    return { value: 'Ma' } 
    }, 
    render: function() { 
    return (
     <div className="fuck-react"> 
     Blah blah blah 
     </div> 
    ) 
    } 

});

+2

在React-Native中,View取代Div,所以更好地使用View! – Dlucidone

回答

28

不,您不能在react-native中使用div標記。由於react-native基於JSX語法,通過抽象Dom分析器自動分配給本地組件。你可以在這裏得到你的答案:https://facebook.github.io/react-native/docs/tutorial.html

此外,react-native更新到0.29的新版本,您可能應該忽略舊的ECMA腳本並使用新的ECMA腳本進行JavaScript語法。因爲,react-native使用reactjs爲它的javascript,所以最好從這裏學習:http://reactjs.net/guides/es6.html

+1

有更新的版本可用於react-native:0.29。請點擊此處:[升級到最新版本](https://facebook.github.io/react-native/docs/upgrading.html) – Riten

+0

感謝您的解釋。打包機是否會自動查找擴展名爲jsx的文件?這個問題的版本是什麼? 0.29是否提供更好的錯誤? – Drew

+0

React-native應用程序主要基於語法,所以在react-native版本中升級時,語法的變化是預先確定的。所以,我們應該在開發應用程序的同時適應JSX語法的變化。 –

6

而不是DIV使用View。

<View style={{flex: 1}}> 
     <Text>Blah blah blah</Text> 
</View> 
1

你不能在反應本機。改用原生組件。

<View> 
    <Text>text text text</Text> 
</View> 

不要忘了之前導入:

import { 
    Text, 
    View 
} from 'react-native'; 
0

您可以在陣營本機應用程序使用ReactJS組件。我意外地在React Native項目中安裝了一個包含<div>標籤的組件。

相關問題