我有一个 CRA 应用程序,由于某种原因尝试排序,它不会调用名为 sortModel 的辅助函数:
let rankingCommercial =
{
'Actual':1,
'Projected':2,
'Proforma':3
}
let rankingAgribusiness =
{
'Historical':1,
'Actual':2,
'Projected':3,
'Proforma':4
}
export default function sortModel(item1,item2)
{
console.log('start sort function')
if (item1.model ==='Commercial' && item2.model ==='Commercial') {
if (rankingCommercial[item1.type]> rankingCommercial[item2.type])
{
return 1;
}
else{
return -1;
}
}
if (item1.model ==='Agribusiness' && item2.model ==='Agribusiness' ){
if (rankingAgribusiness[item1.rank]> rankingAgribusiness[item2.rank])
{
return 1;
}
else{
return -1;
}
}
}
app.js 看起来像这样:
import help from './sortHelper.js'
...
let result = myData.sort(help.sortModel)
好像没有调用排序?我做错了什么?
最佳答案
在您正在调用的 app.js 中
let result = myData.sort(help.sortModel)
并从 './sortHelper.js'
导入 help
,但是,在排序模型脚本中,您将导出 sortModel 作为默认值,因此当您导入 help
,help
成为 sortModel 函数的别名,即 sortModel 不是 help 的嵌套属性,而是 help 本身。
如果要在 sortModel 脚本中将 sortModel 作为嵌套属性进行访问,而不是:
export default function sortModel(item1,item2)
{
// your sort function code here
}
你会得到类似的东西:
export default helpFunctions = {
sortModel: (item1, item1) {
// your sort function code here
}
}
然后在您的 app.js 中导入为 import help from './sortHelper.js'
时,您将能够通过 help.sortModel 访问它
关于javascript - 如何在React应用程序中调用导入的辅助函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55233262/