Study & Project ✏️ 109

[node-gyp rebuild]Error: node-gyp failed to rebuild 에러 분석 및 해결 방법 (feat. electron-forge)

기존 프로젝트를 쳐내고 오랜만에 다시 electron을 건들던 중... 과거엔 electron-builder를 이용해서 패키징과 컴파일링을 진행했는데, 이번에 공식 홈페이지에 가보니 electron-forge가 메인 빌더라고 적혀있었다. https://www.electronjs.org/docs/latest/tutorial/tutorial-packaging Packaging Your Application | Electron To distribute your app with Electron, you need to package it and create installers. www.electronjs.org 그래서 electron-forge로 빌더 교체를 진행하고 여러 가지 컴파일링을 시도해 봤다. 그러나....

[nest.js - typeorm v3.0] node 버전 및 nest.js 세팅과 기초 - 1

기본적인 nest.js를 사용하기에 앞서 nvm을 이용한 node버전 관리를 하길 바란다. 왜냐하면 몇몇 라이브러리는 최신 node버전을 사용한다. NVM설치 아래 사이트에서 setup파일을 실행해 준다 https://github.com/coreybutler/nvm-windows/releases Releases · coreybutler/nvm-windows A node.js version management utility for Windows. Ironically written in Go. - coreybutler/nvm-windows github.com 세 번째 설치 페이지에서 해당 위치에 기본 설치를 하게 되는데 띄어쓰기가 있으면 오류가 생길 수 있으므로 위치를 바꿔준다. 필자는 C:\Windows\..

[Electron] Uncaught Exception: TypeError: Object has been destroyed at IpcMainImpl 에러 해결

😎 Introduction 아마도 이 글을 보는 당신은 어느 정도 수준급 이상의 앱을 만들고 있을 거라고 생각한다. 그리고 이 문제는 멀티윈도우에서 나타났을 거라고 생각한다. 나의 작은 고생이 누군가에게는 빠른 해결이 되길 바라며!!! 🐞 BUG 오류를 해석하자면 메인프로세스에서 오류가 났는데, Object가 파괴됐었기 때문에 메인 프로세스에서 실행할 수 없다고 하는 것이다. 🗝️ Solution 기존 방법 같은 경우 우측 상단의 해당 x버튼을 누르거나 별도로 선언한 ipcRenderer.send()를 통해 Main process로 이벤트를 전달하고, 메인 프로세스에서 해당 window.close()를 통해 종료시켰을 것이다. 하지만, 해당 방법을 사용해도 동일한 오류가 발생했다. 추가적으로 구글링 해 ..

[프로그래머스] Graph 복습 및 실습문제(전력망을 둘로 나누기) 풀이 - 파이썬

📖 문제 📃 코드 cnt = 0 def DFS(v, ch, graph): global cnt ch[v] = 1 cnt += 1 for i in graph[v]: if ch[i] == 0: DFS(i, ch, graph) def solution(n, wires): global cnt answer = n graph = [[] for _ in range(n+1)] cnt = [0] * (n-1) for v1, v2 in wires: graph[v1].append(v2) graph[v2].append(v1) for v1, v2 in wires: ch = [0]*(n+1) # 끊는 역할 ch[v2] = 1 cnt = 0 DFS(v1, ch, graph) answer = min(answer, abs(cnt - (n..

백준[Python] 2667.단지번호붙이기 - 파이썬

📖 문제 📃 코드 import sys input = sys.stdin.readline N = int(input()) complex = [] result = [] cnt = 0 # 아래, 위, 왼쪽, 오른쪽 dx = [0, 0, -1, 1] dy = [1, -1, 0, 0] def bfs(x, y): global cnt if x = N or y = N: return if complex[x][y] == 1: cnt += 1 # 다시 방문하지 않게 초기화 complex[x][y] = 0 for i in range(4): nx = x + dx[i] ny = y + dy[i] bfs(nx, ny) for i in range(N): complex.append(list(map(in..

백준[Python] 13023.ABCDE - 파이썬

📖 문제 📃 코드 import sys sys.setrecursionlimit(10**6) input = sys.stdin.readline N, M = map(int, input().split()) relation = [[] for i in range(N)] visited = [False] * (N+1) ans = False for i in range(M): a, b = map(int, input().split()) relation[a].append(b) relation[b].append(a) def dfs(idx, depth): global ans visited[idx] = True # 1. 종료조건 # case A-B-C-D-E 같은 친구 관계가 있는지 검사 if depth == 4: ans = Tru..

백준[Python] 11724.연결 요소의 개수 - 파이썬

📖 문제 📃 코드 import sys sys.setrecursionlimit(10**6) input = sys.stdin.readline N, M = map(int, input().split()) matrix = [[0]*(N+1) for i in range(N+1)] visited = [False] * (N+1) for i in range(M): a, b = map(int, input().split()) matrix[a][b] = matrix[b][a] = 1 def dfs(v): visited[v] = True for node in range(len(matrix[v])): if visited[node] == False and matrix[v][node] == 1: dfs(node) cnt = 0 fo..