Skip to content

Commit fb52c85

Browse files
committed
Implement SSR Cache
1 parent 050ac95 commit fb52c85

File tree

12 files changed

+299
-93
lines changed

12 files changed

+299
-93
lines changed

docker/redis/docker-compose.yml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
version: '2'
2+
3+
services:
4+
redis:
5+
image: 'bitnami/redis:5.0'
6+
environment:
7+
# ALLOW_EMPTY_PASSWORD is recommended only for development.
8+
- ALLOW_EMPTY_PASSWORD=yes
9+
- REDIS_DISABLE_COMMANDS=FLUSHDB,FLUSHALL
10+
ports:
11+
- '6379:6379'
12+
volumes:
13+
- 'redis_data:/bitnami/redis/data'
14+
15+
volumes:
16+
redis_data:
17+
driver: local

package.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
"@testing-library/user-event": "^7.1.2",
1919
"@types/codemirror": "^0.0.81",
2020
"@types/date-fns": "^2.6.0",
21+
"@types/ioredis": "^4.14.3",
2122
"@types/jest": "^24.0.0",
2223
"@types/koa": "^2.11.0",
2324
"@types/koa-bodyparser": "^4.3.0",
@@ -27,6 +28,7 @@
2728
"@types/loadable__server": "^5.9.1",
2829
"@types/node": "^12.0.0",
2930
"@types/node-fetch": "^2.5.4",
31+
"@types/path-to-regexp": "^1.7.0",
3032
"@types/qs": "^6.9.0",
3133
"@types/ramda": "^0.26.38",
3234
"@types/react": "^16.9.0",
@@ -69,6 +71,7 @@
6971
"html-webpack-plugin": "4.0.0-beta.5",
7072
"identity-obj-proxy": "3.0.0",
7173
"immer": "^5.0.1",
74+
"ioredis": "^4.14.1",
7275
"jest": "24.9.0",
7376
"jest-environment-jsdom-fourteen": "0.1.0",
7477
"jest-resolve": "24.9.0",
@@ -80,6 +83,7 @@
8083
"mini-css-extract-plugin": "0.8.0",
8184
"node-fetch": "^2.6.0",
8285
"optimize-css-assets-webpack-plugin": "5.0.3",
86+
"path-to-regexp": "^6.1.0",
8387
"pnp-webpack-plugin": "1.5.0",
8488
"postcss-flexbugs-fixes": "4.1.0",
8589
"postcss-loader": "3.0.0",

src/App.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ const EmailLoginPage = loadable(
2525
() => import('./pages/EmailLoginPage'),
2626
loadableConfig,
2727
);
28-
const WritePage = loadable(() => import('./pages/WritePage'), loadableConfig);
28+
const WritePage = loadable(() => import('./pages/WritePage'));
2929
const SearchPage = loadable(() => import('./pages/SearchPage'), loadableConfig);
3030
const SavesPage = loadable(() => import('./pages/SavesPage'), loadableConfig);
3131
const TagsPage = loadable(

src/components/common/MarkdownEditor.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ const MarkdownEditor = ({
9191

9292
return (
9393
<MarkdownEditorBlock style={style} className={className}>
94-
<textarea ref={textArea} style={{ border: 'none' }} />
94+
<textarea ref={textArea} style={{ border: 'none', display: 'none' }} />
9595
</MarkdownEditorBlock>
9696
);
9797
};

src/components/write/TitleTextarea.tsx

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
import styled from 'styled-components';
1+
import styled, { css } from 'styled-components';
22
import TextareaAutosize from 'react-textarea-autosize';
33
import palette from '../../lib/styles/palette';
44

5-
const TitleTextarea = styled(TextareaAutosize)`
5+
const style = css`
66
display: block;
77
padding: 0;
88
font-size: 2.75rem;
@@ -18,4 +18,12 @@ const TitleTextarea = styled(TextareaAutosize)`
1818
}
1919
`;
2020

21+
export const TitleTextareaForSSR = styled.textarea`
22+
${style}
23+
`;
24+
25+
const TitleTextarea = styled(TextareaAutosize)`
26+
${style}
27+
`;
28+
2129
export default TitleTextarea;

0 commit comments

Comments
 (0)