전체 글

· 🐋 Flutter
이번에 FutureBuilder를 구현하면서 한 가지 문제를 발생했다. snapshot.hasData 와 snapshot.hasError를 구현하는데 Future 함수에서 오류가 발생하면 hasError로 넘겨 오류 상태를 표시하도록 하려고 했다. 그런데 hasData는 잘 불러와도 hasError는 작동이 안 되던 것이다. 찾아보니 StackOverflow에서 나랑 비슷한 사례를 발견했다. 아래 코드가 나와 같은 케이스이다. try { var response = await http.get(url); // Success if (response.statusCode == 200) { [...] } // Failure else { return Future.error("Error"); } } catch (e) ..
· 🐧 Linux
이번 포스팅에서는 저번에 설치한 노예베리파이를 이용해 아이패드에서도 코딩이 가능하게끔 VisualStudio Code-Server를 설치하고자 한다. 우선 SSH 를 통해 라즈베리파이에 원격 접속을 시도한 후 아래 코드를 입력하자 sudo apt update wget https://code-server.dev/install.sh wget(웹겟)을 통해 다운받은 자동 설치 install.sh를 실행시켜야 한다. 그전에 권한을 부여해주도록 하자 sudo chmod 755 install.sh 그런 다음 설치를 진행해주면 된다. sudo ./install.sh 설치가 완료되면 재부팅 후 바로 실행되게 서비스를 활성화해주도록 한다 systemctl enable code-server@$USER 여기서 $USER대신..
· 🐧 Linux
요즘에 내가 마음대로 다룰 수 있는 서버를 하나 구축해보고 싶어서 다양한 인프라를 알아보고 있었다. 기존에 사용하던 PC를 계속 켜 두고 사용하기에는 자취 살이 man인 나에겐 전기료 부담이 좀 많을 것 같았다. 저전력 PC로 어떤 게 적절한가 알아보던 중 라즈베리파이를 알게 되었고, 싱글보드 PC 중에서 가장 인기가 많고 가성비가 좋아 보였기 때문에 바로 구매를 결정하였다. 사양은 파이4에 램은 넉넉하게 8기가로 잡고 구매를 했다. 퇴근 후, 집에 도착을 하니 박스 하나가 문 앞에 있었는데 나는 이게 바로 '그것'이라는 것을 직감했다. 곧바로 흥얼거리며 택배 상자를 들고 집으로 뛰어 들어가 박스를 뜯고 새 제품의 냄새를 맡고 관람을 했다. 손바닥보다 조그마한 이 기기가 얼마만큼 대단한 성능을 내는지는 ..
· 🐋 Flutter
최근에 토이프로젝트로 진행중이던 작업물 중에서 나혼자 쓰기가 아까워 pub.dev 에 게시를 하여 모두와 함께 쓸수있는 하단 네비게이션바를 개발했다. 작동화면 먼저 보여주고 적용에 대한 설명을 진행하도록 하겠다. 이와 같이 하단 NavigationBar를 사용하는 대신 내가 원하는 쬐깐한 위젯을 사용하도록 한다. 아래 주소는 내가 직접 게시해둔 패키지이고 가장 최신 것으로 dependency에 추가하여 적용하도록 한다. https://pub.dev/packages/flutter_bottom_floating_bar flutter_bottom_floating_bar | Flutter Package This plugin was maked to use bottom navigation bar pub.dev 사용방..
· 🐋 Flutter
요즘 앉아서 먹기만 하는 빈도가 증가하다보니 몸에 타이어가 2센치가량 늘어나게 되었다. 여름도 오고 슬슬 다이어트 시작을 해야될 듯 하다. 이번 포스팅에서는 Linux기반 서버에서 Flutter로 작성한 Web어플리케이션을 호스팅하는 법을 알아가 보도록 하겠다. 우선 우리가 준비해야할 사항들은 1. Flutter로 작성된 프로젝트 (2.0 이상) 2. 리눅스 기반 서버 (ubuntu, debian, centOS 포함) 이게 끝이다. 자 그러면 먼저 Flutter 로 작성된 프로젝트를 웹 앱으로 빌드해주도록 해하자 프로젝트 콘솔에 flutter build web 을 입력하도록 하자. flutter build web 그러면 이런 모습으로 웹버전으로 빌드가 완료된다. 그리고 빌드된 폴더로 이동하자. 프로젝트 ..
· 🐋 Flutter
이번 포스팅에서는 저번 포스팅에 이어 메시지 저장하기 기능을 구현해볼 예정이다. 우선 모델 클래스를 약간 더 수정하였다. message_model.dart import 'package:cloud_firestore/cloud_firestore.dart'; class MessageModel { final String id; //해당 도큐먼트의 ID를 담기위함. final String content; final Timestamp sendDate; MessageModel({ this.id = '', this.content = '', Timestamp? sendDate, }):sendDate = sendDate??Timestamp(0, 0); //서버로부터 map형태의 자료를 MessageModel형태의 자료로 ..
Dogfoot_JW
개발자국