如何在switch语句和其他函数中使用const?

时间:2018-12-23 18:36:30

标签: javascript reactjs

我有一个 switch语句,其中如果满足某些条件,则变量 stage 会更改。此变量必须在另一个函数的 switch 之外使用。如何在同一文件中全局使用它?

const stage= 5

export default function (state = INIT, action) {
    switch (action.type) {
        case types.EXAMPLE:
             let stage = 0
             if (CONDITION) {
                 stage = 1
             }
             else{
                 stage = 2
             }
             return{ ...state, someState: someState, }

        default:
             return state      
    }
}

switch 语句结束,并且新功能 exampleFunction 开始。 我想在这里使用 stage

let exampleFunction = (data, exampleData) => {
   if (stage == 2) return generateSomething();}
   else { generateSomethingElse(); }

return data;
}

1 个答案:

答案 0 :(得分:2)

您不能,stage完全是您要导出的默认函数的私有对象。如果要在该函数之外使用stage,则需要将其包含在返回值中,然后在需要stage的地方使用该函数。

(还要注意,if (stage = 2)是不正确的,=分配的对象。为了进行比较,请使用=====。)