import kotlinx.android.synthetic.main.fragment_input.* 위에꺼 추가해서 button이 바로 코드 상에서는 보이고 잘되는데 실행하면 에러가 나네요. Fragment에서는 inflate한 다음에 findViewById를 반듯이 써야 하나요? 바로 button컨트롤에 접근 안되나요?
영상에서 UI 계층 (Controller)에서 Member Entity Object를 생성해서 파라미터로 넘겨주어 Service 계층에서 회원가입 처리를 하도록 코딩을 하셨는데, 원래 UI계층에서 Entity Object를 생성해서 Service 계층에서는 응용서비스 관련 로직만 짜는게 맞는건가요? 아니면 앞 영상에서 말씀하셨던, 너무 "Controller -> service -> Repository 로만 구조를 가져가려면 딱딱하고 불편한 점이 있다,"라는 말씀을 하셨던 부분에 해당해서 다르게 코딩하신 건가요?
import React from 'react' ; import Link from 'next/link' import styled from 'styled-components' import { Menu , Input , Button } from 'antd' ; const layout = styled . div ` color : white; ` ; const upmenu = styled ( Menu ) ` color : red; ` ; const AppLayout = ({ children }) => { return ( < layout > < upmenu mode = "horizontal" > < Menu.Item key = "home" >< Link href = "/" >< a > 홈1 </ a ></ Link ></ Menu.Item > < Menu.Item key = "country" >< Link href = "/country" >< a > 홈2 </ a ></ Link ></ Menu.Item > < Menu.Item key = "mail" > < Input.Search enterButton style = { { verticalAlign: 'middle' } } /> </ Menu.Item > </ upmenu > < Link href = "/signup" >< a >< Button > 회원가입 </ Button ></ a ></ Link > { children } </ layout > ); }; export default AppLayout ; 나머지 페이지는 내용 다 문제없고 styled-components만 적용 안시키면 다 그대로 잘 돌아갑니다 ㅠ Cannot read property 'getState' of undefined TypeError: Cannot read property 'getState' of undefined at new Connect (C:\Users\hp\Desktop\react_ex\NodeBird\front\node_modules\mini-store\lib\connect.js:86:57) at processChild (C:\Users\hp\Desktop\react_ex\NodeBird\front\node_modules\react-dom\cjs\react-dom-server.node.development.js:2995:14) 이런에러가 뜨는데 뭐가 문제일까요? menu item도 이름 다 바꿔보기도 했고 styled-components 내용들을 바꿔보기도 하고 다른 프로젝트에서 간단하게 실행해보려고 했는데 다 저 getState 에러가 납니다 ㅠ
node 10.x 설치하고 아래 명령어 실행하면 저런 에러내용이 나오네요.. 무슨문제 일까요? 다시 설치하고 해도 안되고 $ npm i -g @vue/cli npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142 npm WARN deprecated resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated npm WARN deprecated urix@0.1.0: Please see https://github.com/lydell/urix#deprecated npm WARN deprecated mkdirp@0.5.4: Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.) npm WARN deprecated core-js@2.6.11: core-js@<3 is no longer maintained and not recommended for usage due to the number of issues. Please, upgrade your dependencies to the actual version of core-js@3. C:\Users\hmsarang\.npm-global\vue -> C:\Users\hmsarang\.npm-global\node_modules\@vue\cli\bin\vue.js npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.2.7 (node_modules\@vue\cli\node_modules\chokidar\node_modules\fsevents): npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.12: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"}) npm WARN optional SKIPPING OPTIONAL DEPENDENCY: abbrev@1.1.1 (node_modules\@vue\cli\node_modules\fsevents\node_modules\abbrev): npm WARN enoent SKIPPING OPTIONAL DEPENDENCY: ENOENT: no such file or directory, rename 'C:\Users\hmsarang\.npm-global\node_modules\@vue\cli\node_modules\fsevents\node_modules\abbrev' -> 'C:\Users\hmsarang\.npm-global\node_modules\@vue\cli\node_modules\fsevents\node_modules\.abbrev.DELETE'....
제로초님 nosql 로 만들어 보고 있는 질문이 잇어서 남깁니다 이렇게 0과 1로 구분 될때는 array로 되는데 console.log를 보시면 -M3fuKU0KX27SLetTrxF 갑이 들어 왔을때는 array가 바껴 지는 것 같은데 length도 나오지 않구여 type error로 map 이 안되는것 같은데 이런 경우 혹시 어떻게 해결 해야 할지 알 수 있을까요??
안녕하세요. Flutter도 widget tree를 구성하여 하나의 앱 시스템을 구축하는데요. 예를 들어 3개의 StateFulWidget A, B, C가 있다고 가정하면 서로 필요한 함수 및 변수를 조작하기 위햐서 GlobalKey를 사용하고 있고 구동도 잘됩니다. GlobalKey를 static 으로 선언하고 필요한 곳에서 (특정 위젯의 )globalkey.currentState.doSomeThing(); 이런식으로 사용합니다. 하지만 로그를 보면 'Multiple widgets use same Globalkey' 라고 빨간색으로 경고 표시가 나오네요. 구동은 이상없이 잘되는데요. 무시하고 이런방식으로 구현을 해도 되는건가요?
강사님 강의 잘 듣고 현재 간단한 프로젝트를 flutter로 만들고 있는데요. 저는 상태관리를 provider 방식으로 하고 있습니다. 궁금한점이 ListView에 게시글을 서버에서 받아서 복수개를 보여주는 로직인데요. List<게시글 VO> 형식으로 Provider Model에 저장하고 Consumer 에서 반복문으로 게시글을 보여줍니다. 동작은 잘하는데 의문이 예를 들어 ListView에 200~300여개의 게시글을 보여준다고 하면 Consumer 내부에서 200~300회의 반복문이 수행되는데 그때 ListView에 보여지는 것이 문제가 없이 잘될까요? 일단 테스트로 ListView의 하단에 도달하면 2개씩 불러오는 코드에서는 잘 되는것 같습니다. 아니면 반복문 처리를 provider model 에서 미리 해놓고 Cosumner에서는 그대로 위젯 리스트를 리턴만 시키는게 좋을까요? 코드는 아래와 같습니다. Consumer <RecruitModel>( builder: (context , recruit , child){ List<Widget> resultList=[] ; for (Recruit recruit in recruit. listInMain ){ Widget recruitCard = _buildRecruitCard( name:recruit. name , regDate:recruit. regDate ) ; resultList.add(recruitCard) ; } return Column ( children: resultList , ) ; } , ) class RecruitModel with ChangeNotifier{ var client = http.Client() ; var listInMain =[] ; var listInSearch =[] ; void getListInMain ({ var start , var cnt}) async { var requestUrl = clientUrl+ '/rc_grlbc' ; Uri uri = Uri. parse (requestUrl) ; var urlWithParam = uri.replace(queryParameters: { 'start' :start.toString() , 'cnt' :cnt.toString() }) ; try { var response = await client .get(urlWithParam) ; var list = jsonDecode(response. body ) ; var tempList=[] ; for (int i= 0 ; i<list.length ; i++){ Recruit recruit = Recruit . fromJson (list[i]) ; tempList.add(recruit) ; } listInMain ..addAll(tempList) ; } catch (e){ print( 'e : $e ' ) ; } notifyListeners() ; } }
localhost:8080/api/docs 하면 swagger ui 가 나오는것으로 이해했는데 router 에 path : "*" 로 설정해 둬서 Not Found Page 로 들어가는데 swagger ui 로 보기 위해서 따로 깔아야할 package 가 있나요 ?.? 왜 잘 안되지,,
client Thread는 다음과 같이 작성되었습니다. var client = OkHttpClient() var request_builder = Request.Builder() var url = request_builder.url( "http://172.30.1.18:8080/MobileServer/upload.jsp" ) var multipart_Builder = MultipartBody.Builder() var file = File( pic_path ) multipart_Builder.addFormDataPart( "mobile_img" , file. name , RequestBody.create(MultipartBody. FORM , file)) var body = multipart_Builder.build() var post = url.post(body) var request = post.build() client.newCall(request).execute() server 코드는 다음과 같이 작성되었습니다. <%@ page import="com.oreilly.servlet.*" %> <%@ page import="com.oreilly.servlet.multipart.*" %> <%@ page import="com.oreilly.servlet.MultipartRequest"%> <% request.setCharacterEncoding("utf-8"); String path = getServletContext().getRealPath("upload"); System.out.println(path); int max = 1024 * 1024 * 100; DefaultFileRenamePolicy policy = new DefaultFileRenamePolicy(); System.out.println(request.getContentType()); new MultipartRequest(request, path,max,"utf-8",policy); %>
안녕하세요, 제가 스프링 부트로 만든 애플리케이션을 배포할 때, nohup java -jar \ -Dspring.config.location=classpath:/application.properties,classpath:/application-$IDLE_PROFILE.properties,/home/ec2-user/app/application-oauth.properties,/home/ec2-user/app/application-real-db.properties \ -Dspring.profiles.active=$IDLE_PROFILE \ $JAR_NAME > $REPOSITORY/nohup.out 2>&1 & 위의 쉘 스크립트문으로 최종 배포를 합니다. 시중에 있는 책의 내용을 그대로 사용한 것인데요, 그런데 제가 궁금한 것은 classpath:/application.properties 와 classpath:/application-$IDLE_PROFILE.properties 는 왜 포함시켜야 작동되는건지 이해가 잘 안갑니다. -Dspring.config.location= 의 설정은 외부 파일, 즉 여기서 예를들면 /home/ec2-user/app/application-oauth.properties 나 /home/ec2-user/app/application-real-db.properties 와 같은 jar파일 내에 포함되어 있지 않은 외부파일들을 포함시킬 때 쓰는것 아닌가요? 그런데 저 classpath:/~~~를 포함시키지 않으면 실행이 안됩니다. 스프링 부트 jar 파일 내의 ~~.properties 파일들은 jar파일 내에 자동으로 포함되어있는 줄 알았는데 아니더라구요.. 원래 그런건가요? 아니면 제가 뭔가 잘못 이해하고 잘못 하고 있는건가요??