본문 바로가기

카테고리 없음

Express + MovaXterm Seting 3. pug part

pug = 템플릿 언어이다 express의 view engine

 

$ npm install pug

 

pug set을 해준다

 

views폴더생성 home.pug 파일생성

 

라고 적고 

 

웹페이지에 적용시키기 위해서 

 

send -> render

("Home"); -> ("home) ;

로 바꿔준다 pug 파일명과 같은 이름을 해주면 웹페이지에 적용된다

Hello 부분이 자동으로 변환되어 있다

 

파일을 만들어 준다

 

view폴더 안에 layout폴더 생성 후 그안에 main.pug 파일생성

 

main 레이아웃
main 레이아웃을 확장해서 사용 할 수 있다(pug는 안써도 동작함)

레이아웃을 복사 붙여넣기 한것과 같은 효과를 볼 수 있다 

 

main을 적용시키기 위한 모습

 

홈이 웹에 적용된 모습

 

view 폴더안에 partials 폴더 생성 

그안에

footer.pug

header.pug 파일 생성

 

아이콘을 넣기 위해 링크를 넣어준다
컴포넌트를 분리하기 위해서 include 를 작성
footer 부분코드

 

 

컴포넌트 분리방식으로 실행된 모습
자바스크립트를  자동으로 연도가 바뀌는 코드를 넣음

 

header 부분 작성

 

header를 include에 넣어주면 
웹페이지에 header부분이 적용이된다 

 

 

 *컨트롤러에 있는 정보를 템플릿에 추가하는 방법

-Template 틀 형식 붕어빵틀 같은것   

-Controller 제어 조종장치

 

app.js에 locals 라는 middleeare를 만든다

local변수를 global 변수로 사용하도록 만들어주는 middleware

 

middleware.js 파일생성

 

localMiddleware 생성
localMiddleware도 자동import 추가 기능이 있다 
middleware를 활용하여 웹페이지 상에서 아래 그림의 버튼이나 join , login페이지로 이동 할수 있게 되었다 
이동 된다 

 

이로써 전역적으로(글로벌) 사용할 수 있는 변수를 추가하는 방법이다 

템플릿, 뷰, 모든 곳에서 사용가능하다

 

다음 함수로 라우터로 넘어간다는 뜻으로 next()를 써(호출)줘야 한다

 

*템플릿 따로 지정하기

render의 인자를 활용한다

 

 

render의 첫번째 인자는 템플릿이고, 두 번째 인자는 템플릿에 추가할 정보가 담긴 객체다

 

 

 

home 에만 따로 템플릿을 사용했다

 

 

 

search 부분 추가
name이 있어야 한다
검색 주소 부분에 name이 적용 되어있다

 

 

search 부분에 내가 운하는 정보를 가져오도록 작성
새로고침 하면 검색한 값이 나와야 한다
템플릿에 로직 추가 새로운 ES6 문법 적용
동작 한다 
login 부분작업
join 부분작업

 

partials/socialLogin.pug 생성 (원하는 만큼 소셜 로그인 기능을 join 화면과 login 화면 모두에 띄울수 있게 코딩 

login join 에 include 해준다
소셜 로그인 기능
기본적인 조인 로그인 소셜 기능 구현

 

 

editProfile 부분 작업

 

routes 를 사용하여 join,login 을 바꿔 준다

 

구현화면 

 

 

/users${routes.changePassword} 로 해줘야 링크이동이 된다 (구현화면)

 

 

 

 

-가상정보를 먼저 넣어서 템플릿을 완성하고 어떤일이 어떻게 발생하는지 알아본다

그 후에 데이터베이스를 이용해 실제 정보를 추가하고 사용자 인증기능도 구현할 수 있다

 

 

 

db.js 파일생성

 

가상데이터를 넣어주고 설정
데이터를 불러올수 있게 되었다 실행화면

-mixin = 

-views/mixins 폴더 생성 views/mixins/videoBlock.pug파일생성

 

item이 4개 있기 때문에 
화면에 4개가 출력되어 있다 
최종실행

 

 

 

search 부분 연결
홈처럼 만들고 검색기능 추가 
검색을 하면 본화면처럼 실행된다

 

post 부분을 만들어 주고 get join 부분도 수정한다
글로벌라우터부분 수정해주고 post 만들어주고 post import 해준다

 

join 해보면 
받은 값을 확인 할수 있다