Dev.Op
Yollow ๐Ÿ“š
Dev.Op
์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (701)
    • ์œ ์ตํ•˜์…จ๋‹ค๋ฉด ๊ด‘๊ณ  ํ•œ๋ฒˆ๋งŒ ํด๋ฆญ ๋ถ€ํƒ๋“œ๋ฆด๊ฒŒ์š”~ (0)
    • ---------------------------.. (0)
    • Stock (1)
      • ์Šˆํผ๋งˆ์ดํฌ๋กœ์ปดํ“จํ„ฐ (2)
    • ๐Ÿง์ „๊ธฐ์ฐจ (72)
      • ๐Ÿ„lg์—๋„ˆ์ง€์†”๋ฃจ์…˜ (0)
      • ๐ŸŠํ˜„๋Œ€์ž๋™์ฐจ (0)
    • ๐Ÿ—๏ธ์†Œํ”„ํŠธ์›จ์–ด (243)
      • ๐Ÿ’ปpython (85)
      • โž•C & C++ (1)
      • โ˜•๏ธTableau (32)
      • ๐Ÿ‘‹SQL & MySQL (20)
      • ๐ŸฌHTML & CSS (14)
      • ๐Ÿ“—JavaScript (31)
      • ๐Ÿ“˜Pspice & Excel (2)
      • ๐Ÿ“•Matlab & COMSOL & CATIA (6)
      • ๐Ÿ“™java & Servlete & JSP (29)
      • ๐Ÿ““Raspberry PI 4 (5)
      • ๐Ÿ”จAnsys (2)
      • DJango (0)
      • Flutter (3)
      • Typescript (0)
      • ๐Ÿ†Vue (5)
      • ๐Ÿ‹Docker (1)
    • ๐Ÿ“‹์ฑ„์šฉ๊ณต๊ณ  (0)
    • ๐Ÿ“WEB & ML & DL ํ”„๋กœ์ ํŠธ (27)
      • ๐ŸŒต2์ฐจ ํ”„๋กœ์ ํŠธ(LG) (9)
    • ๐Ÿงฉ์ผ์ƒ (89)
      • ๐ŸŒค์ฝ”๋”ฉ ๊ณต๋ถ€ ์ผ์ง€ (1)
      • ๐Ÿšด์ž์ „๊ฑฐ (5)
      • ๐Ÿ“ฐํ…Œํฌ (20)
      • ๐ŸฆFood & Cafe (5)
      • ๐Ÿ’‰์˜์–ด ๋„์ ์ด๊ธฐ (5)
      • โšก๋ฐœ์ „์†Œ (6)
      • ๐Ÿ“š๋…์„œ (1)
      • ๐Ÿ›ซ์—ฌํ–‰ (2)
      • ๐Ÿ“ˆ๋ธ”๋กœ๊ทธ๋งˆ์ผ€ํŒ… (6)
    • ๐ŸŒ๊ธˆ์œต (37)
    • ๐ŸŽจ์ทจ์—…End (16)
    • ๐Ÿ‘‹์ž๊ฒฉ์ฆ (150)
      • ๐Ÿ™ˆSQLD๊ฐœ๋ฐœ์ž (12)
      • ๐Ÿ”Œ์ „๊ธฐ๊ธฐ์‚ฌ (116)
      • ๐Ÿข์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ์‚ฌ (7)
      • ๐ŸŒŽADsP(๋ฐ์ดํ„ฐ๋ถ„์„์ค€์ „๋ฌธ๊ฐ€) (10)
      • ๐Ÿš™1์ข… ๋Œ€ํ˜• ์šด์ „ ๋ฉดํ—ˆ (1)
      • โญTableau Desktop Specialist (2)
    • ๐Ÿฅ‡๊ณต๋Œ€์ด๊ฑฐ์ €๊ฒƒ(๋ง‰ํ•™๊ธฐ) (24)
      • ๐Ÿ“๊ณตํ•™์ˆ˜ํ•™ 2 (1)
      • ๐Ÿบ๋งˆ์ดํฌ๋กœํ”„๋กœ์„ธ์„œ์‹ค์Šต (4)
      • ๐ŸŒCAE (10)
      • โœˆ๏ธ์ž๋™์ฐจ๊ณตํ•™์‹คํ—˜2 (0)
      • ๐Ÿšข์œ ์ฒด์—ญํ•™ (6)
      • ๐Ÿš—ํ˜„๋Œ€์ฐจ H-๋ชจ๋นŒ๋ฆฌํ‹ฐ ํด๋ž˜์Šค 1๊ธฐ (3)

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    ๊ณต์ง€์‚ฌํ•ญ

    • Vue, Typescript, React, Tableau,โ‹ฏ
    • ์ง„์ธ์‚ฌ๋Œ€์ฒœ๋ช…(็›กไบบไบ‹ๅพ…ๅคฉๅ‘ฝ)

    ์ธ๊ธฐ ๊ธ€

    ํƒœ๊ทธ

    • fluid mechanics
    • Python
    • ํ…Œ์Šฌ๋ผ
    • rdfr
    • ๋””์นด๋ฅด๊ณ 
    • ์—…๋น„ํŠธ
    • vue btn
    • ๋ธŒ๋ฃจํŠธํฌ์Šค
    • ์œ ์ฒด์—ญํ•™
    • ์ง๋ ฌ๋ฆฌ์•กํ„ฐ
    • lgํ™”ํ•™
    • html
    • ipad dual monitor
    • ์ „๊ธฐ์ฐจ
    • ๋ฐฑ์ค€
    • LG์—๋„ˆ์ง€์†”๋ฃจ์…˜
    • SMCI
    • ์‚ผ์„ฑ์ „์ž
    • ์—๋””์Šจev
    • ๋น…๋ฐ์ดํ„ฐ
    • ์•„์ด์˜ค๋‹‰5
    • ์ž๋ฐ”
    • css
    • ์ „๊ธฐ์ฐจ ๋ณด์กฐ๊ธˆ 2021
    • ADsP
    • ๋ถ€๋“ฑ๋ฅ 
    • ์•Œ๊ณ ๋ฆฌ์ฆ˜
    • ์—”์†”
    • ๋น…๋ฐ์ดํ„ฐ๋ถ„์„์ค€์ „๋ฌธ๊ฐ€
    • ์—”๋น„๋””์•„

    ์ตœ๊ทผ ๋Œ“๊ธ€

    ์ตœ๊ทผ ๊ธ€

    ํ‹ฐ์Šคํ† ๋ฆฌ

    hELLO ยท Designed By ์ •์ƒ์šฐ.
    Dev.Op

    Yollow ๐Ÿ“š

    [Vuetify] ๋™๊ธฐ,๋น„๋™๊ธฐ,
    ๐Ÿ—๏ธ์†Œํ”„ํŠธ์›จ์–ด/๐Ÿ“—JavaScript

    [Vuetify] ๋™๊ธฐ,๋น„๋™๊ธฐ,

    2022. 10. 4. 11:49
    ๋ฐ˜์‘ํ˜•

    ๋™๊ธฐ ๋ฐฉ์‹๊ณผ ๋น„๋™๊ธฐ ๋ฐฉ์‹

    ๋™๊ธฐ ๋ฐฉ์‹

    ์ˆœ์ฐจ์ ์œผ๋กœ ์ง„ํ–‰์ด ๋˜์–ด์•ผ ํ•˜๋Š” ๊ฒƒ์œผ๋กœ

    ์„œ๋ฒ„์— ์š”์ฒญ์„ ๋ณด๋‚ผ์‹œ ์‘๋‹ต์ด ๋Œ์•„์™€์•ผ ๋‹ค์Œ ์ž‘์—…์ด ์ˆ˜ํ–‰ ๊ฐ€๋Šฅํ•จ

     

    ๋น„๋™๊ธฐ ๋ฐฉ์‹

    ์š”์ฒญ์„ ๋ณด๋‚ผ๋•Œ ์‘๋‹ต ์ƒํƒœ์™€ ๋ฌด๊ด€ํ•˜๊ฒŒ ๋‹ค์Œ ๋™์ž‘์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ

    ๊ฒฐ๊ณผ๊ฐ’์ด ๋‚˜์˜ค๋Š” ๊ฒƒ๊ณผ ๋ณ„๊ฐœ๋กœ ์•„๋ž˜์˜ ์ฝ”๋“œ๋“ค์ด ์‹คํ–‰๋œ๋‹ค

     

    ์˜ˆ๋ฅผ๋“ค์–ด, setTimeout() ๋ฉ”์†Œ๋“œ๋ฅผ ์ƒ๊ฐํ•ด๋ณด๋ฉด,

    ๋น„๋™๊ธฐ APi ์ด๋ฉฐ, ์ฒซ๋ฒˆ์งธ ์ธ์ž๋Š” ์ฝœ๋ฐฑ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋ฉฐ,

    ๋‘๋ฒˆ์งธ ์ธ์ž๋Š” ์ง€์—ฐ์‹œ๊ฐ„์ด๋‹ค

    ๋‘๋ฒˆ์งธ ์ธ์ž๊ฐ€ 0 ์ด๊ธฐ์— 1 -> 2 -> 3 ์œผ๋กœ ์ถœ๋ ฅ๋ ๊ฑฐ๋ผ ์ƒ๊ฐํ•  ์ˆ˜๋„ ์žˆ๋‹ค

     

    console.log("1");
    	setTimeout( () => {
        	console.log("2");
            }, 0);
    console.log("3");

     

    ํ•˜์ง€๋งŒ, ๋น„๋™๊ธฐ ๋ฉ”์†Œ๋“œ๋Š” ์ด๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋‹ค๋ฅธ ํ”„๋กœ๊ทธ๋žจ์ด ๋‹ด๋‹นํ•˜๊ธฐ์—,

    1 -> 3 -> 2๋กœ ์‹คํ–‰๋˜๊ฒŒ ๋œ๋‹ค

     

    ์ฆ‰, setTimeout() ๋ฉ”์†Œ๋“œ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์€ ๋น„๋™๊ธฐ์  API ๋ฅผ ์ œ์™ธํ•œ ๋ชจ๋“  ์ฝ”๋“œ๊ฐ€ ์‹คํ–‰๋œ ์ดํ›„ ๊ฒฐ๊ณผ๋ฅผ ์ฝ˜์†”์— ์ถœ๋ ฅํ•œ๋‹ค

     

    ๋‹ค์‹œ๋งํ•ด, ๋น„๋™๊ธฐ ์ฝ”๋“œ์˜ ์‹คํ–‰ ๊ฒฐ๊ณผ๋Š” ๋™๊ธฐ์  ์ฝ”๋“œ๊ฐ€ ์ „๋ถ€ ์‹คํ–‰๋˜๊ณ ๋‚˜์„œ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜๊ฒŒ ๋œ๋‹ค

     

    ํšจ์œจ์„ฑ๋ฉด์—์„œ๋Š”, ๋™๊ธฐ์  ์ฝ”๋“œ๊ฐ€ ๋น„๋™๊ธฐ๋ณด๋‹ค ์ง๊ด€์ ์ด์ง€๋งŒ,

    ๊ฒฐ๊ณผ๊ฐ€ ํ•„์š”ํ•œ ์ฝ”๋“œ์—์„œ๋Š” ๋Œ€๊ธฐ ์‹œ๊ฐ„์ด ํ•„์š”ํ•œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜๋„ ์žˆ๋‹ค.

     

    ๊ทธ๋ ‡๊ธฐ์— ๋น„๋™๊ธฐ๋Š” ๋™๊ธฐ๋ณด๋‹ค๋Š” ๋ณต์žกํ•˜์ง€๋งŒ, ๊ฒฐ๊ณผ๊ฐ€ ์ฃผ์–ด์ง€๋Š”๋ฐ๋กœ ๋‹ค๋ฅธ ์‹œ๊ฐ„๋™์•ˆ ๋‹ค๋ฅธ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋ฉด์„œ ๊ธฐ๋‹ค๋ฆฌ์ง€ ์•Š๊ณ  ์ฝ”๋“œ๋ฅผ ์‹คํ–‰์‹œ์ผœ ๋‚˜๊ฐ€๋ฏ€๋กœ ํšจ์œจ์ ์ด๋‹ค.

     

    ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ๋Š” ์œ„์˜ ๋™๊ธฐ, ๋น„๋™๊ธฐ ๊ฐœ๋…์„ ์‚ฌ์šฉ์„ ์ž์ฃผ ํ•˜๊ฒŒ ๋œ๋‹ค.

     

     


    Vuetify์—์„œ v-text-field์— ์œ ํšจ์„ฑ ๊ทœ์น™ ๋„ฃ๊ธฐ
    • ์ด๋ฉ”์ผ์˜ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ํ•˜๋ ค๊ณ  ํ•˜๋Š”๋ฐ
    • :rules์— ๊ฐ€์ ธ์˜ฌ ๊ทœ์น™์ด๋ฆ„์„ ๋„ฃ์„ ์ˆ˜ ์žˆ๋‹ค -> validate๋ฅผ ์ ์šฉ ๊ฐ€๋Šฅ
    • form input์—์„œ validation์„ ์ œ๊ณต
    • ์‹ค์‹œ๊ฐ„ ๊ฒ€์ฆ์„ ํ•˜๊ธฐ์œ„ํ•ด์„œ๋Š” ๋น„๋™๊ธฐ์ ์œผ๋กœ ๊ตฌํ˜„ํ•ด์•ผํ•จ
    • email v-text field ๊ทœ์น™์„ data์— ๋ฐฐ์—ด ํ˜•์‹์œผ๋กœ ๋งŒ๋“ค๊ธฐ
    • v : ํ•„๋“œ์— ๋“ค์–ด๊ฐ„ ๋ฐ์ดํ„ฐ
    • !!v : ํ•„๋“œ์— ๋ฐ์ดํ„ฐ๊ฐ€ ์—†์„ ๋•Œ
    • replace(/(\s*)/g, '') : ํ•„๋“œ์— ๋“ค์–ด๊ฐ„ ๋ชจ๋“  ๋นˆ์นธ์„ ์ œ๊ฑฐ ( password ๊ฐ™์€ ๊ฒฝ์šฐ ์ด๋ ‡๊ฒŒ ์‚ฌ์šฉ)
    • ํ•„๋“œ์— ๋นˆ์นธ์ด ๋“ค์–ด๊ฐ€๊ฒŒ๋˜๋ฉด ๋ฐ์ดํ„ฐ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ์ œ๋Œ€๋กœ ๋ชป ํ•  ๊ฒฝ์šฐ๊ฐ€ ์ƒ๊ธธ ์ˆ˜ ์žˆ๋‹ค!!
    • pattern : ์ด๋ฉ”์ผ ์ •๊ทœ์‹์œผ๋กœ ๋งŒ๋“ค์–ด ์ ์šฉ

    ์„ค์ •ํ•œ ํ›„ ์œ ํšจ์„ฑ ์ฒดํฌ๋ฅผ ๋ชจ๋‘ ๊ฑฐ์น˜๊ณ  submit ํ•ด์•ผํ•จ

     

    <์ฝ”๋“œ 1>

    methods:{
        async login(){
          const validate = this.$refs.form.validate()
          if (validate){
            const email = this.email.replace(/(\s*)/g, '')
            const password = this.password.replace(/(\s*)/g, '')
            await this.$store.dispatch('LOGIN', { email, password, saveLogin:this.autoLoginCheckBox })
          }
        }
      }

     

     

    ์œ„์™€ ๊ฐ™์ด

    ์ „์ฒด ํ…œํ”Œ๋ฆฟ์— v-form ํƒœ๊ทธ์— reff= "form" ์„ ๋„ฃ์–ด์ฃผ๊ฑฐ๋‚˜,

    <v-form
    ref="form"
    @submit.prevent="login"
    >
        <v-col cols="12" md="12">
          <v-card-actions>
            <v-spacer></v-spacer>
            <v-btn
              color="grey darken-3"
              @click="dataChunk"
              outlined
              depressed
              large
              :loading="this.$store.state.RPAStore.SearchLoading"
              type="submit"
              :disabled="invalid"
              ><v-icon right dark> mdi-file-search </v-icon>
              ๊ฒ€์ƒ‰ ํ•˜๊ธฐ
            </v-btn>
          </v-card-actions>
        </v-col>
      </v-row>
    </template>

    ์ด๋Ÿฐ์‹์œผ๋กœ ํ…œํ”Œ๋ฆฟ ํ•˜๋‹จ์— ๊ฒ€์ƒ‰ํ•˜๊ธฐ ๋ฒ„ํŠผ์„ ๋งŒ๋“ค์–ด์ฃผ๊ณ , type์„ submit์œผ๋กœ ๋งŒ๋“ค์–ด์„œ, 

     

    ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋“ค์€,

      methods: {
        ...mapActions(["EseroParser"]),
    
        searchData() {
          console.log("dataChunk ๊ฒ€์ƒ‰");
          let parameter = {
            email: this.email,
            date_from: this.date,
            date_to: this.date2,
          };
          this.dataParser(parameter);
        },
      },
    };
    </script>

    ์ด๋ ‡๊ฒŒ, email ๊ณผ ์ž…๋ ฅ ๋ฐ›์€ ๋ฐ์ดํ„ฐ๋“ค์€ dataParser ๋กœ ๋ณด๋‚ด์ฃผ๊ฒŒ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

     

    ์ฐธ๊ณ ๋กœ, dataParser ๋Š” store ์—์„œ ์„ค์ •ํ•œ actions๋กœ ์ถ”ํ›„ ์„ค๋ช…์— ๋‚จ๊ธฐ๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

     

     

    ์•„๋ฌดํŠผ, <์ฝ”๋“œ 1>์— ์˜ํ•ด์„œ, validate ์„ ๋งŒ๋“ค๊ณ ,

    this.$refs.form.validate()๊ฐ€ true์ธ์ง€ false์ธ์ง€ ํ™•์ธ ํ›„ true์ผ๋•Œ submit์„ ํ•˜๋„๋ก if๋ฌธ์„ ๊ฑธ์–ด์ฃผ์–ด ์‹คํ–‰ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค

     

     

    ๊ณต๋ถ€ํ•ด์•ผํ•  ๊ฒƒ

    - await  ์™€ async ๋ฐฉ์‹์„ ํ†ตํ•ด์„œ ์ด๋ฉ”์ผ ๊ฒ€์ฆํ•˜๋Š” ๋ฐฉ์‹

    - ๋น„๋™๊ธฐ์  ํ†ต์‹ ์„ ์ข€ ๋” ํšจ๊ณผ์ ์œผ๋กœ ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ์‹

    - promise ํ˜•ํƒœ์˜ ํ†ต์‹  ๋ฐฉ์‹

    - vuetify์˜ ๊ธฐ๋Šฅ์„ ์ตœ์ ํ™”์— ๋งž์ถฐ์„œ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ์‹๋“ฑ

    - vuelidate ํ˜น์€ vee-validate ์ด๋ผ๋Š” ํˆด ์‚ฌ์šฉ ๋ฐฉ๋ฒ• ๋“ฑ(npm ์‚ฌ์šฉ - ๋”ฐ๋กœ ์„ค์น˜ํ•ด์•ผํ•จ)

     

    ์•„์ง ๊ฐœ๋ฐœ์ž๋กœ์„œ ๋ฐฐ์šธ ๊ฒƒ๋“ค์ด ์ˆ˜์—†์ด ๋งŽ์Œ์„ ๋А๋ผ๋Š” ํ•˜๋ฃจ..

     

     

    ์ปคํ”ผ ๋งˆ์‹œ๋ฉด์„œ ๊ณ„์† ์ •๋ฆฌํ•ด๋‚˜๊ฐ€์•ผ์ง€..

    ๋ฐ˜์‘ํ˜•
    ์ €์ž‘์žํ‘œ์‹œ

    '๐Ÿ—๏ธ์†Œํ”„ํŠธ์›จ์–ด > ๐Ÿ“—JavaScript' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

    ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ ํ™”์‚ดํ‘œ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ   (0) 2022.11.29
    [์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ] Math ํ•จ์ˆ˜ ์ด์šฉํ•˜์—ฌ ๋กœ๋˜ ๋ฒˆํ˜ธ ์ƒ์„ฑํ•˜๊ธฐ  (0) 2022.11.08
    node ์ด์šฉํ•œ json ์ฝœ๋ฐฑ ํ•จ์ˆ˜  (0) 2022.09.29
    json ๋ฐ์ดํ„ฐ vscode๋กœ ๊น”๋”ํ•˜๊ฒŒ ๋ณด๋Š” ๋ฐฉ๋ฒ•(feat.์ •๋ ฌ)  (0) 2022.09.29
    [AWS + Filezila] ์›น์„œ๋น„์Šค ๋ฐฐํฌ ์‹œํ˜„ ์˜์ƒ  (2) 2022.09.23
      '๐Ÿ—๏ธ์†Œํ”„ํŠธ์›จ์–ด/๐Ÿ“—JavaScript' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
      • ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ ํ™”์‚ดํ‘œ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ 
      • [์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ] Math ํ•จ์ˆ˜ ์ด์šฉํ•˜์—ฌ ๋กœ๋˜ ๋ฒˆํ˜ธ ์ƒ์„ฑํ•˜๊ธฐ
      • node ์ด์šฉํ•œ json ์ฝœ๋ฐฑ ํ•จ์ˆ˜
      • json ๋ฐ์ดํ„ฐ vscode๋กœ ๊น”๋”ํ•˜๊ฒŒ ๋ณด๋Š” ๋ฐฉ๋ฒ•(feat.์ •๋ ฌ)
      Dev.Op
      Dev.Op
      Interest: CS, Drive

      ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”