home2 ๊ฒŒ์‹œํŒ Node.js, Express ๊ฒŒ์‹œํŒ ReactJS DB list get ์š”์ฒญ

ReactJS DB list get ์š”์ฒญ

  • ์ด ์ฃผ์ œ์—๋Š” 2๊ฐœ ๋‹ต๋ณ€, 2๋ช… ์ฐธ์—ฌ๊ฐ€ ์žˆ์œผ๋ฉฐ Maldive๊ฐ€ 4 ๋…„, 9 ์›” ์ „์— ์ „์— ๋งˆ์ง€๋ง‰์œผ๋กœ ์—…๋ฐ์ดํŠธํ–ˆ์Šต๋‹ˆ๋‹ค.
3 ๊ธ€ ๋ณด์ž„ - 1 ์—์„œ 3 ๊นŒ์ง€ (์ด 3 ์ค‘์—์„œ)
  • ๊ธ€์“ด์ด
    ๊ธ€
  • #7901

    Maldive
    ์ฐธ๊ฐ€์ž

    ์ž์„ธํžˆ๋Š” ๋ชจ๋ฅด๊ฒ ์ง€๋งŒ ๊ฒ€์ƒ‰์„ ๋งŽ์ด ํ•˜๋‹ค๋ณด๋‹ˆ,  ๋А๋‚Œ์ƒ

    ์„ ์ƒ๋‹˜ ์Šคํƒ€์ผ์ด  ์„ผ์Šค์žˆ๊ฒŒ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ํŠน์„ฑ ์ž˜ ์‚ด๋ฆฌ๊ณ ,  RESTapi ์— ๊ฐ€๊นŒ์šฐ์‹ ๊ฒƒ๊ฐ™์Šต๋‹ˆ๋‹ค.

    ์งˆ๋ฌธ 1. app.get("/", 

    ---React CRUD์ปดํฌ๋„ŒํŠธ๋“ค์ด 1ํŽ˜์ด์ง€์— ๋‹ค์žˆ๊ตฌ์š”,

    Detail์€  React ์—๊ฒŒ Routing์„ ๋‹ค ๋งž๊ธด ์ƒํƒœ๊ณ ์š”  (app.get("*",)

     POST ์š”์ฒญ(form action)ํ•  ๋•Œ "/"  ๊ฒฝ๋กœ ํ•œ๋ฒˆ ์ผ๋Š”๋ฐ (/add ํ•˜๋ฉด detail ํŽ˜์ด์ง€๋กœ ๊ฐ€๋‹ˆ๊นŒ)

    get ์š”์ฒญ ๊ฒฝ๋กœ๋Š” ๋„๋ฐ์ฒด ์–ด๋–ค ์‹์œผ๋กœ ํ•ด์•ผํ•˜๋‚˜์š”?

     

    ์งˆ๋ฌธ 2. ์‘๋‹ต.render("/blog/build/index.html" , 

    ---CRUD ๋ชจ๋‘ 1ํŽ˜์ด์ง€์— ๋‹ค ์žˆ๋Š”๋ฐ , render ๋ง๊ณ  ํ‘œํ˜„์„ ์–ด๋–ป๊ฒŒ ํ•ด์•ผํ•˜์ฃ ? sendFile ํ•ด๋„ ๋ ๊ฐ€์š”?

    (blog-server-mongoDB์—ฐ๋™์€ ๋˜๊ณ  ์žˆ์–ด์š”...)

     

    ?App.js 

     let POSTS = [];  (- App ๋ณธ๋ฌธ ๋ฐ– ์œ„์ชฝ์—)

     {POSTS.map(function (a, i) {
            return (
              <div
                key={i}  className="plan-list"  onClick={() => {setPlanModal(true); ๋ˆ„๋ฅธ์ œ๋ชฉ๋ฒˆํ˜ธ๋ณ€๊ฒฝ(i);}}>          
                      <div className="flex-1">
                         <h4 className="TITLE">{POSTS[i].title}</h4>                 
                       </div>         
              </div> ); })}

    ?server.js 

    app.get("/", function (์š”์ฒญ, ์‘๋‹ต) {
      db.collection("post").find().toArray(function (์—๋Ÿฌ, ๊ฒฐ๊ณผ) {
          console.log(๊ฒฐ๊ณผ); 
          ์‘๋‹ต.render("/", { POSTS: ๊ฒฐ๊ณผ, });});});

     

     

    #7903

    codingapple
    ํ‚ค ๋งˆ์Šคํ„ฐ

    ์„œ๋ฒ„์—๋‹ค๊ฐ€๋Š”

    "๋ˆ„๊ฐ€ /๊ฒŒ์‹œ๋ฌผ์ค˜ ๋ผ๊ณ  get์š”์ฒญ์„ ํ•˜๋ฉด db์—์„œ ๋ฐ์ดํ„ฐ ๋ฝ‘์•„์„œ ๋ณด๋‚ด์ฃผ์„ธ์š”~"๋ผ๊ณ  ์ž‘์„ฑํ•˜๊ณ 

    ๋ฆฌ์•กํŠธ์—์„ 

    /๊ฒŒ์‹œ๋ฌผ์ค˜๋กœ ajax get์š”์ฒญํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. 

     

    ๊ทธ๋ฆฌ๊ณ  ์„œ๋ฒ„์—์„  ์‘๋‹ต.json( { name : 'kim' } ) ์ด๊ฑฐ ์“ฐ์‹œ๋ฉด ์›ํ•˜๋Š” object๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ด์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค

     

    #7905

    Maldive
    ์ฐธ๊ฐ€์ž

    axios ์‚ฌ์šฉํ•˜๋Š”๊ฑฐ๊ตฌ๋‚ญ... ๋‹ค์‹œ ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ๊ฐ์‚ฌํ•ด์š” ?

3 ๊ธ€ ๋ณด์ž„ - 1 ์—์„œ 3 ๊นŒ์ง€ (์ด 3 ์ค‘์—์„œ)
  • ๋‹ต๋ณ€์€ ๋กœ๊ทธ์ธ ํ›„ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

About

ํ˜„์žฌ ์›” 700๋ช… ์‹ ๊ทœ์ˆ˜๊ฐ•์ค‘์ž…๋‹ˆ๋‹ค.

  (09:00~20:00) ๋น ๋ฅธ ์ƒ๋‹ด์€ ์นดํ†ก ํ”Œ๋Ÿฌ์Šค์นœ๊ตฌ ์ฝ”๋”ฉ์• ํ”Œ (๋งํฌ)
  admin@codingapple.com
  ์ด์šฉ์•ฝ๊ด€, ๊ฐœ์ธ์ •๋ณด์ฒ˜๋ฆฌ๋ฐฉ์นจ
โ“’ Codingapple, ๊ฐ•์˜ ์˜ˆ์ œ, ์˜์ƒ ๋ณต์ œ ๊ธˆ์ง€
top

ยฉ Codingapple, All rights reserved. ์Šˆํผ๋กœ์ผ“ ์—๋“€์ผ€์ด์…˜ / ์„œ์šธํŠน๋ณ„์‹œ ๊ฐ•๋™๊ตฌ ๊ณ ๋•๋กœ 19๊ธธ 30 / ์‚ฌ์—…์ž๋“ฑ๋ก๋ฒˆํ˜ธ : 212-26-14752 ์˜จ๋ผ์ธ ๊ต์œกํ•™์›์—… / ํ†ต์‹ ํŒ๋งค์—…์‹ ๊ณ ๋ฒˆํ˜ธ : ์ œ 2017-์„œ์šธ๊ฐ•๋™-0002 ํ˜ธ / ๊ฐœ์ธ์ •๋ณด๊ด€๋ฆฌ์ž : ๋ฐ•์ข…ํ