gumpcha / good-reads-clone Goto Github PK
View Code? Open in Web Editor NEWNomad Coders Online Hackerthon 과제
Home Page: https://hackathon.nomadcoders.co/
Nomad Coders Online Hackerthon 과제
Home Page: https://hackathon.nomadcoders.co/
모든 메시지에 대한 처리를 하나의 모듈단위에서 해결
vue mixin
을 써서 모든 하위 컴포넌트에 메시지 전달 메소드를 구현하려 하였으나 하위 컴포넌트에서 해당 메서드를 호출할 경우 undefined
호출됨mixin
은 공통된 기능을 필요로하는 각기 다른 컴포넌트에 넣어주기 위한 기능임Vue
를 하위컴포넌트에서 인식하지 못함
element-ui
로 인하여 render blocking이 발생하므로 제거 필요element-ui
를 font-awesome
아이콘 으로 대체성능점수 90대로 상향됨
router
가드 내부에서 리다이렉트 시킬 때 에러발생
this.$router.push({ name: 'profile' });
this.$router.push({ name: 'profile' }, () => {});
font-family: element-icons
가 기본값으로 font-display: auto
로 되어있어 변경이 안됨로그인 후 더미 데이터 검색이 되지 않음
무료나 최소한의 과금으로 사용할 frontend/backend Architecture 결정하기
html-webpack-plugin
, preload-webpack-plugin
으로 빌드시 에러발생
Couldn't parse bundle asset "/Users/kisstest/Desktop/kisstest/MyTasks/good-reads-clone/dist/js/addBook.js". Analyzer will use module sizes from stats file.
회원가입 후 일정시간이 지난 후 같은 이메일과 패스워드로 로그인 시도시 유효하지 않은 정보라며 에러 표시
이전 최적화 코드는 모든 항목을 별개의 파일로 나눠서 파일 요청이 그만큼 많아지게 되어 성능 저하의 요인이 됨
css
, js
파일이 import
되는 것 방지단일 파일들과 하나로 번들링 되어야 하는 파일등 상황에 맞는 최적화 필요
element-ui
컴포넌트가 모두 분리되어 다운되어 사이트 테스트에서 LCP
의 성능이 다운되어 나타남
webpack
설정을 조정하여 css파일을 하나로 합칠 필요defaultExtractor
의 문제로 보임'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
'no-console': 'off',
chrome devtools coverage 결과 현재 필요없는 사용되지 않는
element
의 컴포넌트들이 초기 렌더링시 호출되고 잇음
element ui
를 호출할 때 현재 쓰고 있는 컴포넌트만 단일로 호출, 하지만 DevTools Lighthouse, webpack-bundle-analyzer
에서 별다른 변화가 없음main.js
에서 현재 쓰고있는 아이콘만 선택적으로 improtindex.es.js
파일 680kb => 73kb까지 줄어듬font-awesome
아이콘이 사용될 컴포넌트에 자동으로 import
해줄 코드(모듈)이 필요...main.js
에서 필요한 아이콘을 추가하던 코드를 아이콘이 필요한 컴포넌트에 추가vue components
에 dynamic import
를 할 수 있는 모듈before dynamic import
127.0.0.1_8887-20200620T184210.html.zip
[font-awesome, element-ui] after dynamic import
127.0.0.1_8887-20200620T183319.html.zip
mkdir good-reads-clone-heroku && cd $_
nvm install 12
npm install -g npm@latest
npx express-generator --git
heroku login
heroku create
git init
git add .
git commit -m 'initial commit'
git push heroku master
heroku open
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.