React native 像这样在react native中实现js类命名有什么区别

React native 像这样在react native中实现js类命名有什么区别,react-native,React Native,从一些教程中,我看到了实现本机js react类的不同之处, 我想知道的是,在这个实现的差异中,在相关的功能方面是否存在差异 先这样 import React, {Component} from 'react'; export default class App extends Component { } import React, {Component} from 'react'; class App extends Component { } export default Ap

从一些教程中,我看到了实现本机js react类的不同之处, 我想知道的是,在这个实现的差异中,在相关的功能方面是否存在差异

先这样

import React, {Component} from 'react';

export default class App extends Component {

}

import React, {Component} from 'react';

class App extends Component {

}

export default App;
第二个是这样的

import React, {Component} from 'react';

export default class App extends Component {

}

import React, {Component} from 'react';

class App extends Component {

}

export default App;

有什么不同吗?

使用它时没有什么不同。任何一个都会将该类成员导出为默认值。我认为这可以归结为偏好和你认为更干净的代码

有些人可能会说,类声明应该是这样的:声明类。然后,如果您想使用导出,请将它们放在底部,特别是如果您在一个文件中有多个要导出的类。这样,所有导出都可以在代码的一个部分中看到

import React, {Component} from 'react';

class App extends Component {
    // ...
}

class Page extends Component {
    // ...
}

class Service extends Component {
    // ...
}

// you have all of your exports together
export App;
export Page;
export Service;
import React, {Component} from 'react';

interface State {
    // ...
}

interface Props {
    // ...
}

class App extends Component<Props, State> {
    // ...
}

export default App;
为了进一步扩展,如果使用Typescript,类声明可能需要很多字符才能放在一行中。因此,如果您试图编写干净的“linted”代码,您可能希望保持行的长度。为了避免不必要的长行,您只需在代码完成后单独执行即可

import React, {Component} from 'react';

class App extends Component {
    // ...
}

class Page extends Component {
    // ...
}

class Service extends Component {
    // ...
}

// you have all of your exports together
export App;
export Page;
export Service;
import React, {Component} from 'react';

interface State {
    // ...
}

interface Props {
    // ...
}

class App extends Component<Props, State> {
    // ...
}

export default App;
import React,{Component}来自'React';
界面状态{
// ...
}
界面道具{
// ...
}
类应用程序扩展组件{
// ...
}
导出默认应用程序;

归根结底,这取决于您或您的团队,归结为纯粹的美学/干净的代码目的

其实没有什么区别。这只是意味着,如果您愿意,您可以在导出类之前对类执行额外的操作。例如,您可以添加以下类型的PropType:

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

class App extends Component {

}

const appPropTypes = {
  someProp: PropTypes.bool.isRequired
}

App.propTypes = appPropTypes

export default App;

虽然使用propTypes,您也可以将它们作为
static
属性添加到类本身中。通常我倾向于使用
导出默认类…
只是为了保持简洁,但这是一个偏好问题。

好的,谢谢。因为我是英语初学者。所以我对这个有点困惑没问题@Nurdhitmalik!很高兴澄清