2016-04-05 1 views
1

私はReact-Nativeで新しく、私はチュートリアルで2つの異なる(私のために)指示に直面しました。彼らの違いを教えてください。違いは何ですか?構文を説明していただけますか?

1) var React = require( 'react-native');

対インポートは、{ AppRegistry、 コンポーネント、 スタイルシート、 テキスト、 表示}反応ネイティブ 'からを反応させます。

2) var ReactComponent = React.createClass({...}); ReactComponentは、コンポーネント{}

を拡張し、実際に反応し、ネイティブのベストプラクティスは何ですか?

VSクラス - どのような変種を使用するのが良いのですか?また、反応ネイティブの変数 "React"にはどこにでも名前が書かれています。なぜ別の言葉で名前を付けることができないのですか(エミュレーターは変数Reactを見つけられないと言っています)

答えて

3

どちらの例でも、最初のオプションは書かれたものですが、2番目のオプションは新しいものを導入する「新しい」ES6シンタックスです。そのため、最初の構文を使用して古い文書を見つけることができますが、新しい文書では新しいES6標準を使用することができます。私が始めたばかりのとき、それはまた私をたくさん混乱させました。私は古い使用することができます(< = ES6を)知っている限りでhttp://www.2ality.com/2014/09/es6-modules-final.html

をして、新しいES6の構文は交換可能に、しかしからのベスト・プラクティス:あなたが興味を持っている場合

、あなたはここでES6モジュールシステム上に読むことができます私はあなたのコード、好ましくは新しい標準の1つに固執します。

+0

2番目の選択肢として、ライブラリから変数 "React"に角カッコで囲まれたものをインポートするのは正しいですか? 2番目のオプションは新しい構文なので使いやすいですか? –

+1

はい、フルモジュールをインポートします。ブラケットの間に必要なサブモジュールのそれぞれを表示します。 詳細については、https://facebook.github.io/react-native/docs/javascript-environment.htmlおよびhttps://babeljs.io/docs/learn-es2015/#modulesを参照してください。 –

関連する問題