如何允许react-native启用对JSX(扩展)文件的支持

21 浏览
0 Comments

如何允许react-native启用对JSX(扩展)文件的支持

React Native应用无法解析组件。

我试图在App.js中导入和渲染Test.jsx

我得到以下错误-

error: bundling failed: Error: Unable to resolve module `./screens/Test` from App.js`:
The module `./screens/Test` could not be found from App.js. Indeed, none of these files exist

项目管理器(或者说文件)看起来像这样-

Files

Test.js的代码-

import React, { Component } from 'react';
import {View, Text, StyleSheet} from 'react-native'
export default class Test extends Component {
    render() {
      return (
        
          Hello World?
        
      );
    }
  }
const styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: 'center',
    alignItems: 'center',
    backgroundColor: '#F5FCFF',
  }
});

App.js的代码-

/**
 * Sample React Native App
 * https://github.com/facebook/react-native
 * @flow
 */
import React, { Component } from 'react';
import {
  Platform,
  StyleSheet,
  Text,
  View
} from 'react-native';
import Test from "./screens/Test";
const instructions = Platform.select({
  ios: 'Press Cmd+R to reload,\n' +
    'Cmd+D or shake for dev menu',
  android: 'Double tap R on your keyboard to reload,\n' +
    'Shake or press menu button for dev menu',
});
type Props = {};
export default class App extends Component {
  render() {
    return (
      
        
      
    );
  }
}
const styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: 'center',
    alignItems: 'center',
    backgroundColor: '#F5FCFF',
  },
  welcome: {
    fontSize: 20,
    textAlign: 'center',
    margin: 10,
  },
  instructions: {
    textAlign: 'center',
    color: '#333333',
    marginBottom: 5,
  },
});

我已经尝试了所有提到的解决方案 - react-native#4968,但是没有一个解决方案似乎有效。

我还参考了这个,但是解决方案是针对css的,与解决此问题无关。

我查看了很多其他的问题和SO,但是不知道还需要做什么。我还创建了一个新项目(截图和代码来自新项目)。

我错过了什么?

更新:

我意识到问题是因为我有.jsx扩展名。对于.js文件,导入工作正常。有关如何使项目接受.jsx的任何指针吗?

0