본문 바로가기

전체 글273

[Webpack] 누군가 해둔 웹팩 설정을 뜯어보자. 지금 유지보수하고 있는 모니터링 시스템은 운영중인 사이트와 다르게 vue.js (+webpack) 설정으로 구성되어 있다. 다른 사람이 설정해놓은 웹팩을 가져다 쓰기 보다는 이해하고 사용하고 싶어서, 하나씩 분석해보기로 했다. (참고: webpack 은 3.x 버전이다) 우선, 각 환경별로 설정되어 있는 webpack config 에서 공통으로 사용하는 webpack.base.conf.js 'use strict'; const webpack = require('webpack'); const path = require('path'); const utils = require('./utils'); const config = require('../config'); const vueLoaderConfig = req.. 2021. 6. 25.
[Vue.js] Uncaught ReferenceError: process is not defined Uncaught ReferenceError: process is not defined Vue 로 띄운 프로젝트에서 각 환경마다 달리한 변수를 꺼내서 쓰고 싶어서 콘솔에 `console.log(process.env)` 명령어로 변수 값을 확인해보고 싶었으나 돌아오는건 위 에러메시지 뿐.. 찾아보니 콘솔에서는 환경 변수에 접근할 수 없다고 한다 하하 😅 코드 내에서 특정 액션이 일어났을 때 콘솔 찍히도록 하니까 잘 나옴! 2021. 6. 24.
[Mybatis] NumberFormatException: For input string "Y" error may exist in file [/Users/ha/.../MyMapper.xml] ### The error may involve kr.co....MyMapper.insertUserInfo ### The error occurred while executing an update ### Cause: java.lang.NumberFormatException: For input string: "Y" Mybatis 를 처음 써보는 것도 아닌데 NFE 라니..? 하면서 확인해보니까 아래처럼(=홀따옴표 비교) 사용하면 Mybatis 는 char 문자열로 판단하여 string 문자열과의 타입체크를 하기 때문에 NFE 가 발생한다고 한다. -- error syntax (') INSERT.. #{userInfo.. 2021. 6. 21.
[Javascript] SCRIPT1004: ';'가 필요합니다. SCRIPT1004: ';'가 필요합니다. IE 에서 만난 또 다른 에러. 👩‍🦰 음 내가 세미콜론을 빼먹었구나! 하고 보는데 아니야 ㅠㅠㅠㅠㅠ 난 잘 썼잖아 ㅠㅠㅠㅠ 원인은 IE 에서 지원하지 않는 for..of 문법 때문 (근데 오류메세지가 왜..?) // IE - ';' 가 필요합니다. let myStrArr = ['우리','나라','만세']; for (let str of myStrArr) { console.log(str); } // 이렇게 바꿔주자 :) let myStrArr = ['우리','나라','만세']; for (let i in myStrArr) { console.log(myStrArr[i]); } 2021. 6. 16.
[Javascript] SCRIPT1053: Const를 초기화해야 합니다. 새로운 기능을 개발하여 테스트환경에 올려놨는데 IE 에서 작업한 페이지의 스크립트가 아예 안먹어버리는 현상이 있어서 콘솔을 보니 SCRIPT1053: Const를 초기화해야 합니다. 라는 오류가 발생해있더라. 원인은 variable scope 를 철저하게 관리하겠다고 for 문에 const 를 써버린게 문제였고... 찾아보니 const 는 초기화를 무조건 해줘야하는 scope 라서 상수 외에는 웬만하면 사용하지 말라고 권고되어 있었다 ㅎ const myStrArr = ['우리','나라','만세']; for (const str of myStrArr) { console.log(str); } Chrome IE 예제 코드와 브라우저 간 찍힌 log 차이... 😢 2021. 6. 16.
[MySQL] ERROR 1045 (28000): Access denied for user 'xxx@'localhost' (using password: YES) ERROR 1045 (28000): Access denied for user 'xxx@'localhost' (using password: YES) MySQL 을 DBeaver 로 붙고 있는데 저 오류가 발생했다. > 👩‍🦰 access denied ????? 아니 내 계정에 권한이 없다구요? 했는데 찾아보니까.. 권한 문제가 아니라 비밀번호 오류 라고 하네... ㅎㅎㅎㅎㅎㅎㅎㅎ 작고 소중한 내 기억력이 비밀번호를 개인 비밀번호로 입력해서 발생했고 발급받은 비밀번호로 접속하니 해결 :) 하하. 2021. 6. 16.
Checked Exception, UnChecked Exception Checked Exception - Runtime Exception 을 상속받지 않은 클래스 - 예외 발생 시 롤백을 하지 않으므로 반드시 예외처리를 해줘야 함 - IOException, ClassNotFoundException, SQLException... UnChecked Exception - Runtime Exception 을 상속한 클래스 - 트랜잭션에서 롤백의 대상이 되는 클래스 - NullPointerException... 2021. 6. 15.
[Vue.js] Chart.js 로 그린 Doughnut Chart 에서 없는 데이터의 label 숨기기 (empty data label hide) Vue-Chart.js 로 도넛차트를 그렸는데, 아니 멜론만 9개인데 위에 label 이 줄줄이 나올 필요가 있나? 싶어서 숨기는 방법에 대해서 찾아보다가 성공했다 ! 핵심은 data 세팅할 때 값이 없으면 (나같은 경우는 0이면) undefined 로 세팅하는 것 !!! (null 세팅은 안된다 😅) axios .post(...) .then(res => { let chartData = res.data; this.renderChart( { labels: [ "바나나", "사과", "포도", "체리", "멜론", "수박", "참외" ], datasets: [ { backgroundColor: [ this.randomColors(), // 따로 정의한 method this.randomColors(), thi.. 2021. 6. 10.
[jQuery] .data() vs .attr() jQuery 공식 홈페이지에서 정의하는 .data() 와 .attr() 스펙 .data() : https://api.jquery.com/jQuery.data/#jQuery-data-element-key-value .attr() : https://api.jquery.com/attr/#attr-attributeName 공식 홈페이지에서 정의한 내용에 덧붙여 실무하면서 알게 된 사실을 적어보고자 한다 :) .data() .attr() 리턴 객체 데이터 타입 Object String DOM 변경 여부 X O 서로 다른 데이터 접근 X X 1. 리턴 객체 데이터 타입 .data() : Object 금액 계산을 하려면 typepf 로 현재 데이터 타입을 판단하고 parseInt 를 해야 한다. .attr() : S.. 2021. 6. 7.