我有一个actions文件夹,其中包含我的操作类型常量的常用types.js文件,以及执行以下操作的index.js文件
select employee_id, months_between(start_date, sysdate)
from job_history;
并为我的所有操作导出函数。我想知道,有没有办法我可以创建多个文件来定义我的动作,所以index.js不会变得太长,然后将它们导入我的index.js所以在我的组件中我仍然只能做例如{{ 1}}而不必担心动作来自哪个文件?
答案 0 :(得分:45)
假设您有以下目录结构:
@Override
public void afterProcess(T item, S result) {
//Do nothing
}
@Override
public void onProcessError(T item, Exception e) {
setSkipCount(skipCount + Cons.number.ONE);
toInt = Integer.valueOf(lineCount);
int allLines = toInt + skipCount - Cons.number.ONE;
logger.info("NumbersOfErrorLine :" + allLines);
logger.info("NumbersOfSkipCount :" + skipCount);
setLineCount(Cons.number.ZERO);
}`
在 actions / index.js 中,写一下:
actions/
index.js
types.js
ProductActions.js
然后将 ProductActions.js 定义为:
export * from './ProductActions';
请记住还要使用新的操作类型文件更新您的Reducer:
import axios from 'axios';
import { ... } from './types';
export const fetchProducts = () => { ... };
export const deleteProduct = () => { ... };
答案 1 :(得分:5)
比如说我们有两个动作文件; actionsA和ActionsB。 假设在actionsA中我们有以下动作函数。
//actionsA
//You can import your actionTypes here
export function functionActionsA1(){ /* action body ActionsA1 */}
export function functionActionsA2(){ /* action body ActionsA2 */}
在actionsB中我们有以下代码:
//actionsB
//You can import your actionTypes here
export function functionActionsB1(){ /* action body ActionsB1 */}
export function functionActionsB2(){ /* action body ActionsB2 */}
假设我们有一个包含这两个文件的文件夹操作; actionsA和actionsB,以及index.js文件。
actions/
index.js
actionsA.js
actionsB.js
在index.js文件中,我们从actionsA和actionsB导入不同的操作,然后导出导入的函数。
//index.js
import {functionActionsA1, functionActionsA2 } from './actionsA'
import {functionActionsB1, functionActionsB2} from './actionsB'
export functionActionsA1
export functionActionsA2
export functionActionsB1
export functionActionsB2
现在您只需导入索引文件并获取您想要使用的操作,如下所示:
import {functionActionsA1,functionActionsB2} from '../../actions/index'
答案 2 :(得分:0)
下面以cdaiga为例,我想在这里添加一些内容,
//actionsA
//You can import your actionTypes here
export function functionActionsA1(){ /* action body ActionsA1 */}
export function functionActionsA2(){ /* action body ActionsA2 */}
,在actionB中,我们有以下代码:
//actionsB
//You can import your actionTypes here
export function functionActionsB1(){ /* action body ActionsB1 */}
export function functionActionsB2(){ /* action body ActionsB2 */}
假设我们有一个包含两个文件的文件夹操作; actionsA和actionsB,以及index.js文件。
actions/
index.js
actionsA.js
actionsB.js
在index.js文件中,我们从actionA和actionsB导入不同的动作,然后导出导入的函数。
//index.js
import * as actionsA from './actionsA'
import * as actionsB from './actionsB'
export {actionsA ,actionsB}
现在,您只需导入索引文件并获得要使用的操作,如下所示:
import {actionsA} from '../../actions/index';
将其用作-如果要使用方法functionActionsA1
actionsA.functionActionsA1()