Skip to content

Commit 3b4b5da

Browse files
committed
[refactor] refactor index.tsx
- remove templateComponent function - put it in jsx code
1 parent fc541e1 commit 3b4b5da

File tree

1 file changed

+20
-25
lines changed

1 file changed

+20
-25
lines changed

src/pages/index.tsx

Lines changed: 20 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -61,21 +61,18 @@ const IndexPage = () => {
6161
}, [selectedCount]);
6262

6363
const selectTech = (selectedTech: TechType) => {
64-
if (!selectedTech.src) {
65-
return;
66-
}
6764
const updatedTechs = techs.map((tech) => {
6865
if (tech.number > selectedTech.number && selectedTech.number !== 0) {
6966
tech.number -= 1;
7067
}
7168
return tech;
7269
});
73-
const selectedTechInList = updatedTechs.find((tech) => tech.src === selectedTech.src);
7470

75-
selectedTechInList.number = selectedTechInList.selected ? 0 : selectedCount + 1;
76-
setSelectedCount(selectedTechInList.selected ? selectedCount - 1 : selectedCount + 1);
71+
const selectedTechInList = updatedTechs.find((tech) => tech.src === selectedTech.src);
7772
selectedTechInList.selected = !selectedTechInList.selected;
73+
selectedTechInList.number = selectedTechInList.selected ? selectedCount + 1 : 0;
7874

75+
setSelectedCount(selectedTechInList.selected ? selectedCount + 1 : selectedCount - 1);
7976
setTechs(updatedTechs);
8077
};
8178

@@ -98,29 +95,27 @@ const IndexPage = () => {
9895
setSetting({ ...setting, [key]: value });
9996
};
10097

101-
const templateComponent = () => {
102-
switch (currentTemplate) {
103-
case TemplateType.select:
104-
return <SelectTemplate techs={techs} selectTech={selectTech} changeTemplate={changeTemplate} />;
105-
case TemplateType.setting:
106-
return (
107-
<SettingTemplate
108-
setting={setting}
109-
selectedCount={selectedCount}
110-
changeSetting={changeSetting}
111-
changeTemplate={changeTemplate}
112-
/>
113-
);
114-
case TemplateType.result:
115-
return <ResultTemplate setting={setting} techs={techs} changeTemplate={changeTemplate} />;
116-
}
117-
};
118-
11998
return (
12099
<>
121100
<SEO />
122101
<GlobalStyle />
123-
{templateComponent()}
102+
{(() => {
103+
switch (currentTemplate) {
104+
case TemplateType.select:
105+
return <SelectTemplate techs={techs} selectTech={selectTech} changeTemplate={changeTemplate} />;
106+
case TemplateType.result:
107+
return <ResultTemplate setting={setting} techs={techs} changeTemplate={changeTemplate} />;
108+
case TemplateType.setting:
109+
return (
110+
<SettingTemplate
111+
setting={setting}
112+
selectedCount={selectedCount}
113+
changeSetting={changeSetting}
114+
changeTemplate={changeTemplate}
115+
/>
116+
);
117+
}
118+
})()}
124119
</>
125120
);
126121
};

0 commit comments

Comments
 (0)