用纱线反应本机构建错误?
React Native Build Error With Yarn?
从字面上看,我要做的就是将初始化代码从 index.android.js / index.ios.js
移动到 app/index.js
文件。我将其导出并将其导入回 index.android.js
或 index.ios.js
.
然后我得到了错误。
Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: object
我用npm的时候没有这个问题。似乎 yarn 的构建过程可能有所不同,因为每当我在打包程序中保存任何内容时,它都会显示
Bundling 'index.android.js'
但与 iOS.
无关
我的app/index.js
看起来像这样
import React, { Component } from 'react';
import {
StyleSheet,
Text,
View
} from 'react-native';
export default class Snapp extends Component {
render() {
return (
<View style={styles.container}>
<Text style={styles.welcome}>
Welcome to React Native!
</Text>
</View>
);
}
}
我的 index.android.js
和 index.ios.js
文件看起来像这样
import Snapp from './app'
import { AppRegistry } from 'react-native';
AppRegistry.registerComponent('Snapp', () => Snapp);
有什么想法吗?
尝试在与组件相同的 JS 中注册应用程序。
app/index.js
import React, { Component } from 'react';
import {
StyleSheet,
Text,
AppRegistry
View
} from 'react-native';
export default class Snapp extends Component {
render() {
return (
<View style={styles.container}>
<Text style={styles.welcome}>
Welcome to React Native!
</Text>
</View>
);
}
}
AppRegistry.registerComponent('Snapp', () => Snapp);
index.ios.js / index.android.js
require('./app/');
从字面上看,我要做的就是将初始化代码从 index.android.js / index.ios.js
移动到 app/index.js
文件。我将其导出并将其导入回 index.android.js
或 index.ios.js
.
然后我得到了错误。
Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: object
我用npm的时候没有这个问题。似乎 yarn 的构建过程可能有所不同,因为每当我在打包程序中保存任何内容时,它都会显示
Bundling 'index.android.js'
但与 iOS.
我的app/index.js
看起来像这样
import React, { Component } from 'react';
import {
StyleSheet,
Text,
View
} from 'react-native';
export default class Snapp extends Component {
render() {
return (
<View style={styles.container}>
<Text style={styles.welcome}>
Welcome to React Native!
</Text>
</View>
);
}
}
我的 index.android.js
和 index.ios.js
文件看起来像这样
import Snapp from './app'
import { AppRegistry } from 'react-native';
AppRegistry.registerComponent('Snapp', () => Snapp);
有什么想法吗?
尝试在与组件相同的 JS 中注册应用程序。
app/index.js
import React, { Component } from 'react';
import {
StyleSheet,
Text,
AppRegistry
View
} from 'react-native';
export default class Snapp extends Component {
render() {
return (
<View style={styles.container}>
<Text style={styles.welcome}>
Welcome to React Native!
</Text>
</View>
);
}
}
AppRegistry.registerComponent('Snapp', () => Snapp);
index.ios.js / index.android.js
require('./app/');