如何避免这种警告
它会发出如下警告。
Unexpected default export of anonymous function import/no-anonymous-default-exp
这是发出警告的功能。
import { FETCH_USER } from '../actions/types';
export default function(state = null, action){
switch(action.type) {
case FETCH_USER:
return action.payload || false ;
default:
return state;
}
}
为了避免这种警告,现在我不再使用匿名函数。所以,试试这个。。。
export default function foo(state = null, action){
switch(action.type) {
case FETCH_USER:
return action.payload || false ;
default:
return state;
}
}
您收到错误是因为在这行代码中,您没有提供函数名:
export default function(state = null, action){
代码仍然可以工作,但是为了消除警告,请提供一个这样的函数名:
export default function functionName(state = null, action){
const authReducer=(state=null, action)=>{
switch(action.type){
case FETCH_USER:
return action.payload || false;
default:
return state;
}};
export default authReducer;
您使用的是哪种门楣?Linter通常不喜欢默认导出匿名函数。在esint中,您可以通过在文件顶部添加以下内容来禁用文件:/* eslint-disable import/no-anonymous-default-export */
如果要在单行上禁用它,请在该行的顶部添加以下注释:// eslint-disable-next-line import/no-anonymous-default-export
对于这种类型的语法没有约定。我的建议是,只需将所有导出放在文件的底部,就可以在自己的项目中至少有一个通用的结构。就像其他人说的那样,你可以通过以下操作来消除这个警告:
import { FETCH_USER } from '../actions/types';
const funcName = function(state = null, action){
switch(action.type) {
case FETCH_USER:
return action.payload || false ;
default:
return state;
}
}
export default funcName;