Reactjs 如何导出函数和导入函数钩子
我知道,也知道怎么做,但这会给我带来麻烦 我只想导入函数{OnSubmitLog_In and username},也许更多的是如何正确地列出它不会使它成为一个问题 2个js文件 首先是这样的进口Reactjs 如何导出函数和导入函数钩子,reactjs,Reactjs,我知道,也知道怎么做,但这会给我带来麻烦 我只想导入函数{OnSubmitLog_In and username},也许更多的是如何正确地列出它不会使它成为一个问题 2个js文件 首先是这样的进口 import * as Login from './log_in'; import { OnSubmitLog_In, username } from './log_in'; 在第二个文件中 async function OnSubmitLog_In(e) { e.preventDefaul
import * as Login from './log_in';
import { OnSubmitLog_In, username } from './log_in';
在第二个文件中
async function OnSubmitLog_In(e) {
e.preventDefault();
var data = { username, password }
await axios.post("http://localhost:4000/users/signin", data, {
}).then((response) => {
if (localStorage.getItem('token', response.data.accessToken)) {
alert('user alredy in')
} else {
alert('hellow ' + data.username)
localStorage.setItem('token', response.data.accessToken)
console.log('response data', response.data)
console.log('response config', response.config.data)
}
}, (error) => {
console.log('error', error)
if (405) {
alert('user not found')
} else if (500) {
alert('user not found try again')
}
});
}
export default Log_In;
这就是错误所在
./src/NAVBAR/nav.js
尝试导入错误:“OnSubmitLog\u-In”不是从“/log\u-In”导出的
您正在作为默认值导出,您应该这样导入
import OnSubmitLog_In from './log_in'; //Not sure about username
更新
要将单个文件中的所有内容作为
import * as Login from './log_in'
您需要将所有内容从日志文件导出为命名导出
例如,这是我的登录文件
现在您可以在父组件中使用这些组件,如
<Login.MyComponent />
<Login.MyComponent2 />
您正在作为默认值导出,您应该这样导入
import OnSubmitLog_In from './log_in'; //Not sure about username
更新
要将单个文件中的所有内容作为
import * as Login from './log_in'
您需要将所有内容从日志文件导出为命名导出
例如,这是我的登录文件
现在您可以在父组件中使用这些组件,如
<Login.MyComponent />
<Login.MyComponent2 />
您应该导出对象中的函数,以便按照您的方式导入它们 像这样:
async function OnSubmitLog_In(e) {
e.preventDefault();
var data = { username, password }
await axios.post("http://localhost:4000/users/signin", data, {
}).then((response) => {
if (localStorage.getItem('token', response.data.accessToken)) {
alert('user alredy in')
} else {
alert('hellow ' + data.username)
localStorage.setItem('token', response.data.accessToken)
console.log('response data', response.data)
console.log('response config', response.config.data)
}
}, (error) => {
console.log('error', error)
if (405) {
alert('user not found')
} else if (500) {
alert('user not found try again')
}
});
}
export {
OnSubmitLog_In
};
您应该导出对象中的函数,以便按照您的方式导入它们 像这样:
async function OnSubmitLog_In(e) {
e.preventDefault();
var data = { username, password }
await axios.post("http://localhost:4000/users/signin", data, {
}).then((response) => {
if (localStorage.getItem('token', response.data.accessToken)) {
alert('user alredy in')
} else {
alert('hellow ' + data.username)
localStorage.setItem('token', response.data.accessToken)
console.log('response data', response.data)
console.log('response config', response.config.data)
}
}, (error) => {
console.log('error', error)
if (405) {
alert('user not found')
} else if (500) {
alert('user not found try again')
}
});
}
export {
OnSubmitLog_In
};
您必须按如下方式导入代码
import OnSubmitLog_In, { username } from './log_in';
import { OnSubmitLog_In, username } from './log_in';
在这里,您将导出为默认值。如果删除默认值,则必须编写如下代码
import OnSubmitLog_In, { username } from './log_in';
import { OnSubmitLog_In, username } from './log_in';
您必须按如下方式导入代码
import OnSubmitLog_In, { username } from './log_in';
import { OnSubmitLog_In, username } from './log_in';
在这里,您将导出为默认值。如果删除默认值,则必须编写如下代码
import OnSubmitLog_In, { username } from './log_in';
import { OnSubmitLog_In, username } from './log_in';
看起来您没有从log_In文件中导出onSubmitLog_In,错误是这样说的。看起来您没有从log_In文件中导出onSubmitLog_In,错误是这样说的。您说的更短的方式是什么意思?导入*作为登录自'/log_In';类似于此,请阅读此内容-如果文件中有多个命名导出,则可以使用较短的方式。@ItzikSaviya,检查更新的答案和演示链接。较短的方式是什么意思?以登录方式从“/log_in”导入*;类似于此,请阅读此内容-如果文件中有多个命名导出,则可以使用较短的方式。@ItzikSaviya,请检查更新的答案和演示链接。