Javascript 如何将函数调用到主应用程序文件?自然反应
我刚开始学英语。我正在尝试在我的第一个应用程序中插入底部菜单选项卡 我在Tabs.js上使用此代码(这只是导出部分): 我读过关于导出默认函数的内容,但我不知道如何在我的主应用程序文件中使用它。我确信这是一个语法问题 此外,我还计划为所有选项卡添加背景色。有什么建议吗 多谢各位 更新: 这是我的标签文件Javascript 如何将函数调用到主应用程序文件?自然反应,javascript,reactjs,react-native,Javascript,Reactjs,React Native,我刚开始学英语。我正在尝试在我的第一个应用程序中插入底部菜单选项卡 我在Tabs.js上使用此代码(这只是导出部分): 我读过关于导出默认函数的内容,但我不知道如何在我的主应用程序文件中使用它。我确信这是一个语法问题 此外,我还计划为所有选项卡添加背景色。有什么建议吗 多谢各位 更新: 这是我的标签文件 import*as React from'React'; 从“react native”导入{Text,View}; 从'@react-navigation/native'导入{Navigat
import*as React from'React';
从“react native”导入{Text,View};
从'@react-navigation/native'导入{NavigationContainer};
从“@react navigation/bottom tabs”导入{createBottomTabNavigator};
从“@expo/vector icons”导入{MaterialCommunityIcons};
常量选项卡=()=>{
函数提要(){
返回(
);
}
函数配置文件(){
返回(
);
}
函数主页(){
返回(
);
}
const Tab=createBottomTabNavigator();
函数MyTabs(){
返回(
(
),
}}
/>
(
),
}}
/>
(
),
}}
/>
);
}
返回(
);
}
导出默认选项卡
您基本上像调用组件一样调用它
顺便说一句,你的标签应该像这样导出
const Tabs=()=>{
/...
}
export default Tabs
const-App=()=>{
返回
}
确保将应用程序导出为默认值。您很可能在根文件夹中有一个名为index.js的文件,该文件正在导入应用程序组件
您的App.js文件应如下所示:
import * as React from 'react';
import { Text, View } from 'react-native';
import Tabs from './Tabs.js';
export default const App=()=>{
return <Tabs />
}
import {AppRegistry} from 'react-native';
import App from './App';
import {name as appName} from './app.json';
AppRegistry.registerComponent(appName, () => App);
您不必导出为默认值,因为您只能有一个默认导出。如果您默认导出应用程序,则按如下方式导入:import App from./App'代码>如果您在没有默认值的情况下导出,则必须按如下方式导入:import{App}from./App'
要获得如何向选项卡添加背景色的建议,请点击此处:您应该在返回中的应用程序组件的渲染功能中写入
。见,谢谢你的信息。我已经按照建议更新了代码。我仍然缺少某些内容。错误:元素类型无效:需要字符串(对于内置组件)或类/函数(对于复合组件),但得到:未定义。您可能忘记了从定义组件的文件中导出组件,或者您可能混淆了默认导入和命名导入。请记住,我在这方面很新,所以我可能错过了一些非常明显的东西。很抱歉。您需要导出App
组件,并且能够在某处导入并使用它,因此,您需要const-App=()=>{return};导出默认应用程序代码>谢谢!它起作用了。我不知道该如何评价这个答案,但这很有帮助。谢谢你的回答。但是,我得到了一个错误:错误:元素类型无效:应该是字符串(对于内置组件)或类/函数(对于复合组件),但得到:未定义。您可能忘记了从定义组件的文件中导出组件,或者您可能混淆了默认导入和命名导入。每当遇到此错误时,请检查我的更新答案```错误:元素类型无效:需要字符串(对于内置组件)或类/函数“``表示您没有正确导出组件并等待更新。我已经更新了我所有的标签代码:consttabs=()=>{code+return},并添加了导出默认标签。仅此代码就可以很好地工作;但是,当我尝试在主应用程序文件中调用它(const App=()=>{return})时,它会显示相同的错误。我错过了一些东西。
const App=()=>{
return <Tabs />
}
import * as React from 'react';
import { Text, View } from 'react-native';
import Tabs from './Tabs.js';
export default const App=()=>{
return <Tabs />
}
import {AppRegistry} from 'react-native';
import App from './App';
import {name as appName} from './app.json';
AppRegistry.registerComponent(appName, () => App);