[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
아래 소스에서 질문 있는데요. final query = select(schedules).join([ innerJoin(categoryColors, categoryColors.id.equalsExp(schedules.colorId)) ]); query.where(schedules.date.equals(date)); return query.watch().map( (rows) => rows .map((row) => ScheduleWithColor( schedule: row.readTable(schedules), categoryColor: row.readTable(categoryColors), )) .toList(), ); 보통 테이블 조인을 하게 되면 SELECT a.*, b.* FROM schedule a, categorycolor b WHERE a.id = b.id; 이렇게 되어야 정상일텐데, 왜 drift 문법의 select 에서는 select(schedules)로 표현이 되었을까요?
gravatar를 적용시킨 후 <WorkspaceWrapper> <Workspace>test</Workspace> <Channels> <WorkspaceName>Sleact</WorkspaceName> <MenuScroll>Menu Scroll</MenuScroll> </Channels> </WorkspaceWrapper> 이 부분을 추가해서 저장 후 실행시켰더니 갑자기 메모리 사용량이 폭발적으로 증가해 웹 페이지를 열 수 없다고 나옵니다. 작업 관리자를 켜서 실시간으로 확인해봐도 웹 페이지에서 오류 페이지를 띄울 때 까지 계속 증가하네요. 인터넷에 검색해도 쿠키를 제거하라는 형식적인 답변만 나오고 커뮤니티 게시판에도 이같은 문제를 겪었던 사람이 없어서 질문드립니다. 현재 사용하는 노트북의 RAM은 16기가입니다. 혹시 같은 현상을 겪어보신적 있으신가요?
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
AppBar 위젯 코드를 정리하실 때, stless위젯을 따로 만들지 않고 함수로 가져오셨는데 위젯을 함수로 가져올지 Expnade 위젯처럼 stless위젯으로 가져오는지 어떤 기준으로 나뉘는건가요? class AppBar extends StatelessWidget { const AppBar({super.key}); @override Widget build(BuildContext context) { return AppBar( title: Text( "App name", style: TextStyle( color: Colors.blueAccent, ), ), backgroundColor: Colors.white, ); } } 또한 AppBar를 Stless 위젯으로 만들어보려고 했을때 title 부분과 backgroundColor 부분에서 오류가 나는데 그 이유도 알 수 있을까요?
따라하며 배우는 노드, 리액트 시리즈 - 레딧 사이트 만들기(NextJS)(Pages Router)
AWS 배포 완료 하였는데 CORS 문제가 발생했습니다. .env.production 파일 모두 정상적으로 URL 반영하였는데 왜 안 될까요? 어디를 확인해봐야 할까요? Github 코드 주소 https://github.com/zzinbbang/react-reddit-main .env.production 설정 에러 상황
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
Maps SDK for android --> enable Maps SDK for iOS --> enable 뭐가 문제일까요? E/Google Maps Android API(10009): Authorization failure. Please see https://developers.google.com/maps/documentation/android-api/start for how to correctly set up the map. E/Google Maps Android API(10009): In the Google Developer Console ( https://console.developers.google.com ) E/Google Maps Android API(10009): Ensure that the "Google Maps Android API v2" is enabled. E/Google Maps Android API(10009): Ensure that the following Android Key exists:
따라하며 배우는 노드, 리액트 시리즈 - 레딧 사이트 만들기(NextJS)(Pages Router)
안녕하세요. 회원가입 페이지 기능 생성중인데 서버 쪽에서 const origin = " http://localhost:3000 "; app.use(cors({ origin })); 이렇게 클라이언트 포트인 3000포트를 허용해줬습니다. 그런데 회원가입페이지에서 버튼을 누르면 XMLHttpRequest cannot load http://localhost:4000/api/auth/register due to access control checks. 요런식으로 에러남 요런 에러가 나는데 cors가 제대로 안먹히는고 있는건가요?
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 코드팩토리 디스코드 https://bit.ly/3HzRzUM Flutter 강의를 구매하시면 코드팩토리 디스코드 서버 플러터 프리미엄 채널에 들어오실 수 있습니다! 디스코드 서버에 들어오시고 저에게 메세지로 강의를 구매하신 이메일을 보내주시면 프리미엄 채널에 등록해드려요! 프리미엄 채널에 들어오시면 모든 질의응답 최우선으로 답변해드립니다! 이런식으로 보이는데 이건 문제 없는건가요..?
따라하며 배우는 노드, 리액트 시리즈 - 레딧 사이트 만들기(NextJS)(Pages Router)
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. AWS로 배포하고나면 visual studio code에서 npm으로 로컬실행을 할 수 없을 까여?
안녕하세요. 혼자 개인 프로젝트를 하면서 강의를 듣고 있는데 궁금한 점이 생겨서 질문 남깁니다! 현재 projectA 안에 프론트, 백 폴더를 제로초님처럼 만들어놓고 프론트는 react+typescript / 백은 nestjs+typescript 로 전부 설치해놓은 상태입니다. 다만, 이렇게 할 경우 proxy 설정을 프론트에서 해줘야 된다고 하여 아래 처럼 설정을 해당 강의 듣기전에 구글링하여 만들어놨었습니다. 미들웨어 설치 npm i http-proxy-middleware projectA > pront > src > setupProxy.ts const { createProxyMiddleware } = require("http-proxy-middleware"); module.exports = function (app) { app.use( createProxyMiddleware("/api", { target: "http://localhost:3095", changeOrigin: true, }) ); }; package.json // 위에 생략... "scripts": { "start": "react-scripts start", "build": "react-scripts build", "test": "react-scripts test", "eject": "react-scripts eject" }, "proxy": "http://localhost:3095/", // 아래 생략... 여기서 궁금한 점이.. proxy를 설정할 때 미들웨어를 설치하여 setupProxy.js 파일을 만들어서 사용하라는 글들을 많이 봐서 그대로 따라하고 파일명만 ts로 변경했었습니다. 이렇게 하니 api를 불러오는 url 부분에 localhost:3095 ~~~ 이 부분을 전부 다 입력해야 에러가 나지 않았고 생략해서 사용하려면 package.json에 proxy 경로를 추가하는 방법밖에는 없는걸까요??(미들웨어 설치 + setupProxy.ts 파일로만 proxy 설정을 해보고 싶었는데 이 경우에는 api url 불러오는 부분에 locallhost~~~... 를 쓸 수 밖에 없는지가 궁금합니다.) 다만.. package.json에 proxy 경로를 넣어놓고 setupProxy.ts 파일의 코드를 지워도 제대로 돌아가더라구요.. setupProxy.ts 파일을 잘 못 만든걸까요? 이때 돌아가는 이유가 package.json의 proxy 경로로만 인식을 한 것 같습니다.. https://www.npmjs.com/package/http-proxy-middleware 마지막으로 위 proxy 설정 파일을 해주면 cors 오류가 발생하지 않는 것 같은데 둘중 하나만 설정을 해주는 것이 맞을까요? 둘다 해줘야 하는건지.. 프론트에서 proxy만 하거나 백에서 cors를 설치하는 방향 둘중에 뭐가 더 나은 방향인지도 궁금합니다! 원래는 아래 cors 설치하고 아래 코드까지 작성 해놨었습니다. main.ts(back 폴더안) import { NestFactory } from '@nestjs/core'; import { AppModule } from './app.module'; import cors = require('cors'); async function bootstrap() { const app = await NestFactory.create(AppModule); app.use(cors()); await app.listen(process.env.PORT); console.log(`listening on port ${process.env.PORT}`); } bootstrap();
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
강의 잘 따라하고 있습니다. (저는 맥프로 M1 사용중입니다.) 작성한 코드를 에뮬레이터에 실행시키는데요. 아이폰 에뮬레이터는 잘 돌아갑니다. 그런데 안드로이드 에뮬레이터는 에러가 뜹니다. 에러 화면을 캡쳐했습니다. 자세히 보니 강사님은 'Pixel_XL_API_32' 를 쓰는 것 같아서 저도 디바이스 매니저에서 추가했습니다. 그걸로 Run 해봤는데, 아래와 같은 에러메시지가 뜨네요. ㅜㅠ
안녕하세요 선생님 늘 좋은 강의 감사드립니다. @Database(entities = arrayOf(ToDoEntity::class), version = 1) abstract class AppDatabase : RoomDatabase() { abstract fun getDao(): ToDoDao companion object { val databaseName = "database" var database: AppDatabase? = null fun getInstance(context: Context) { if (database == null) { database = Room.databaseBuilder(context, AppDatabase::class.java, databaseName).build() } } } } 여기서 ToDoEntity::class는 왜 뒤에 .java가 안 붙고 AppDatabase::class.java는 왜 .java가 붙어야 하나요? 그리고 ::class를 안 쓰고 ToDoEntity만 쓰면 왜 안 되는 건가요???? 답변 감사합니다.
안녕하세요 선생님 강의를 듣다 의문이 생겼습니다. 1. setOnLongClickListener를 MainActivity에서 사용하거나 OnItemLongClickListener 구현을 ToDoRecyclerViewAdapter에서 하면 안 되나요? 굳이 분리해야 하는 이유가 무엇인가요? MainActivity와 ToDoRecyclerViewAdapter 둘 중에서 어디에 기능을 구현할지 정하는 기준이 무엇인가요? 감사합니다.
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
캘린더 스케줄 프로젝트 강의를 수강중입니다. 몇가지 여쭤보고 싶은 게 있어서 질문 드립니다. schedule_bottom_sheet.dart 내에서 renderTextField() 함수에서 시간입력인 경우 키보드 타입을 TextInputType.number로 주셨는데, 제가 실제 기기(iPhone11 Pro Max)에서 이 부분이 실행될 때 항상 다음과 같은 로그가 뜹니다. Can't find keyplane that supports type 4 for keyboard iPhone-PortraitTruffle-NumberPad; using 27315_PortraitTruffle_iPhone-Simple-Pad_Default 구글링 해보니 시뮬레이터 사용할 때 대응방법만 있고, 실제 기기 사용할 때 해결방법은 찾을 수가 없었습니다. 실제 기기 사용할 때 해결방법을 알려주시겠습니까? drift_database.dart 내에서 특정 날짜 조건에 맞는 스케줄만 Stream으로 가져오기 부분에서 인자로 받은 date변수는 toLocal()이 필요 없는 것이지요? (실험을 해보니 toLocal() 하고 안 하고 차이는 없는 것 같았습니다.) home_screen.dart 내에서 ScheduleList 클래스의 build함수에서, print( snapshot.data )를 찍어보니, 특정 날짜를 선택할 때 항상 2번 빌드가 되면서 2번 snapshot.data가 print되었습니다. 가령 오늘 8월 19일에 스케줄 없고, 8월 20일에 스케줄이 2개라면, 8월 19일이 선택된 현재 상태에서 8월 20일을 선택하면 ==> 먼저 빈 리스트(8월 19일)가 하나 출력되고, 그 후에 다시 스케줄 2개 담긴 리스트가 출력되었습니다. 8월 20일이 선택된 현재 상태에서 다시 8월 19일을 선택하면 ==> 먼저 스케줄 2개 담긴 리스트가 출력되고, 다시 빈 리스트가 출력되는 식입니다. StreamBuilder가 원래 이런 것인지... 이 부분을 조금 설명해주시겠습니까?
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
보통 네비게이션바를 사용하면 완전 페이지 전환이 아니래 네비게이션바 內 탭이동을 하는거 같더라구요 게시판을 만들려면 탭이동이아니라 라우팅으로 페이지이동이 있어야 될것 같은데요. 이유는 1. 글 리스트가 많을때 : 로딩이 전체적으로 너무 느려짐 2. 스택기준으로 앱이 움직이니까 그냥 페이지 라우팅 페이지 이동이 맞는거 같음 3. 탭이동은 새글 작성시 반영이 안됨??(확인필요) 이정도가 될것 같아요... 근데 제가 질문한 이유는 Tab에서는 아이콘 클릭시 페이지 전환 onpressed 함수는 없는거 같아서요.. BottomNavigation이랑 라이우팅이랑 같이 합쳐져 구현되어 있는 수업은 없을까요?
백엔드를 npm run start로 했을 시 로그인이 안되는 문제가 있습니다. 프론트,백엔드 https적용되어있고 같은 도메인을 쓰고있습니다. app.js에 cookie.secure를 주석처리하면 로그인이 됩니다. 질문드린 이유는 지금 제 프론트 <-> 백엔드가 https 통신이 아닌 것인지 맞다면 왜 cookie.secure를 true로 했을 때 왜 쿠키가 설정이 안되는 것인지 알고싶습니다. -시도한 방법 - domain에 상위도메인 넣어보았는데도 안됩니다 ㅠ 저와 비슷한 상황을 겪은 분의 질문을 보던 중 궁금한 게 있어서 이것도 적어봅니다. https://www.inflearn.com/questions/342672/express-aws-%EB%B0%B0%ED%8F%AC-%ED%9B%84-%EC%84%B8%EC%85%98-%EC%BF%A0%ED%82%A4 여기서 cors는 어떻게 하란걸까요? -아래는 제 상황을 파악하시는데 도움이 될만한 내용을 적어봤습니다.- 아래는 프론트에서 login 요청시 morgan 로그입니다. 프론트 url입니다 => https가 적용되어있습니다. 아래는 백엔드 url을 인터넷주소창에 쳤을 때입니다. 아래는 프론트에서 백엔드로 login 요청했을 때 요청헤더입니다. 아래는 백엔드서버 nginx 설정입니다. Route53 호스팅 영역 설정입니다. app으로 시작하는게 백엔드입니다. (CNAME이런건 그림판으로 지웠습니다.) 가비아에도 서브도메인으로 등록했습니다.