Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/98.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 看来你';您正在尝试访问';ReactNative.Component';从';反应自然';包裹_Ios_Reactjs_React Native - Fatal编程技术网

Ios 看来你';您正在尝试访问';ReactNative.Component';从';反应自然';包裹

Ios 看来你';您正在尝试访问';ReactNative.Component';从';反应自然';包裹,ios,reactjs,react-native,Ios,Reactjs,React Native,我正试图从Tyler McGinnis教程中学习react native: 下面的错误消息似乎很直接,但我不确定我做错了什么 似乎您正在尝试从“react native”包访问“react native.Component”。也许您希望从“React”包中访问“React.Component”。例如,而不是: 从“React native”导入React,{Component,View} 你现在应该做: 从“React”导入React,{Component};从导入{View} “反应自然” 此

我正试图从Tyler McGinnis教程中学习react native:

下面的错误消息似乎很直接,但我不确定我做错了什么

似乎您正在尝试从“react native”包访问“react native.Component”。也许您希望从“React”包中访问“React.Component”。例如,而不是:

从“React native”导入React,{Component,View}

你现在应该做:

从“React”导入React,{Component};从导入{View} “反应自然”


此错误消息应该是关于v 0.25.1引入的弃用的警告

现在不推荐使用React native中的React API。您的Main.js中仍然有它

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

var {
    StyleSheet,
    Text,
    View
} = React;
将其更改为:

import React, { Component } from 'react';
import {StyleSheet,Text,View} from 'react-native';

此错误消息应该是关于v 0.25.1引入的弃用的警告

现在不推荐使用React native中的React API。您的Main.js中仍然有它

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

var {
    StyleSheet,
    Text,
    View
} = React;
将其更改为:

import React, { Component } from 'react';
import {StyleSheet,Text,View} from 'react-native';
错误的原因: 您的文件将
React
设置为'React-native'默认导出,而不是'React'一个

稍后在文件中 在设置为默认导出的变量上访问
React.Component
将不起作用(React-native不包含
Component
作为命名导出)


库是
{Component}
的位置(因此
React.Component
)已定义命名导出


解决方案:

在Main中,将导入更改为以下内容:

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

...

class Main extends React.Component {
    render(){
        return(
            <View style={styles.mainContainer}>
            <Text>Testing the Router</Text>
            </View>
        )
    }
};
从“React”导入React;
进口{
样式表,
文本,
看法
}从“反应本机”;
...
类Main扩展了React.Component{
render(){
返回(
测试路由器
)
}
};
现在参考
React.Component
时,没有问题,因为它已正确定义,同时仍保留对React本机组件的引用。

错误原因: 您的文件将
React
设置为'React-native'默认导出,而不是'React'一个

稍后在文件中 在设置为默认导出的变量上访问
React.Component
将不起作用(React-native不包含
Component
作为命名导出)


库是
{Component}
的位置(因此
React.Component
)已定义命名导出


解决方案:

在Main中,将导入更改为以下内容:

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

...

class Main extends React.Component {
    render(){
        return(
            <View style={styles.mainContainer}>
            <Text>Testing the Router</Text>
            </View>
        )
    }
};
从“React”导入React;
进口{
样式表,
文本,
看法
}从“反应本机”;
...
类Main扩展了React.Component{
render(){
返回(
测试路由器
)
}
};

当您现在引用
React.Component
时,没有问题,因为它已经正确定义,同时仍然保留对React本机组件的引用。

您可以发布其余文件内容以及Main.js中的内容吗?谢谢:-谢谢,我在下面添加了我的答案。您在Main中使用React.Component时发生冲突,因为在此之前定义了一个变量
React
,并将其分配给“React native”默认导出。您可以发布其余文件内容以及Main.js中的内容吗?谢谢:-谢谢,我在下面添加了我的答案。您在Main中使用React.Component时发生冲突,在此之前定义了变量
React
,并将其分配给“React native”默认导出。您所指的“deprecation”不是导致错误的原因。这仅仅是因为主组件中React上使用了React.Component的引用,该组件定义了一个名为
React
的变量,并将其设置为React Native。您所指的“弃用”并不是导致错误的原因。这仅仅是因为在主组件的React上使用了React.Component的引用,该组件定义了一个名为
React
的变量,并将其设置为React本机