swagger에서 api를 정의할 때 Uncaught TypeError: Cannot read property 'withMutations' of null  에러가 발생했다.


이 이유는 api 정의할 때 parameters의 값이 null이기 때문에 발생하는 것이다.




parameters: null,


또는


parameters: ,





=>



parameters:[]


로 하면 동작한다.



Posted by '김용환'
,

grafana solo

web 2018. 7. 4. 18:19



http://docs.grafana.org/reference/sharing/



grafana 대시보드를 iframe으로 연동하면 dashboard의 이름이 dashboard-solo가 된다.



<iframe src="https://snapshot.raintank.io/dashboard-solo/snapshot/y7zwi2bZ7FcoTlB93WN7yWO4aMiz3pZb?from=1493369923321&to=1493377123321&panelId=4" width="650" height="300" frameborder="0"></iframe>


Posted by '김용환'
,



자바스크립트/CSS를 처음 하는 입장에서는


화면 구성을 어떻게 해야 할지 잘 보이지 않는다.


UI 컴포넌트를 수평으로 두어야 할지, 수직으로 둬야 두려면 flex를 사용한다. 


그리고 가운데 정렬할 지에 대한 내용은 간단하게 아래 키워드를 사용한다.



.container {

display: flex;

flex-direction: row;

justify-content: center;

align-items: center;

}


간단한 개념에 대한 설명 자료는 다음과 같다. 


https://joshuajangblog.wordpress.com/2016/09/19/learn-css-flexbox-in-3mins/




아주 자세한 내용은 다음을 참조한다.


https://css-tricks.com/snippets/css/a-guide-to-flexbox/



https://msdn.microsoft.com/ko-kr/library/bg124109(v=vs.85).aspx




Posted by '김용환'
,

css의 id와 class의 차이

web 2018. 1. 8. 14:29



* ID's are unique

Each element can have only one ID

Each page can have only one element with that ID


* Classes are NOT unique

You can use the same class on multiple elements.

You can use multiple classes on the same element.


The “id=something” can be used to style one HTML element, whereas the “class=something” could be used to style multiple elements.


https://css-tricks.com/the-difference-between-id-and-class/


Posted by '김용환'
,


예전 jquery를 쓰던 때를 생각하고 전역변수를 사용해보려 했다. 

<script>var data = @Html(Json.stringify(Json.toJson(title)));</script>


그러나, 크롬에서는 에러를 발생한다.


Refused to execute inline script because it violates the following Content Security Policy directive: "default-src 'self'". Either the 'unsafe-inline' keyword, a hash ('sha256-lfyc2lBqjP0Km9O0kTi2WbS/mSUMSiDX55goNiumC30='), or a nonce ('nonce-...') is required to enable inline execution. Note also that 'script-src' was not explicitly set, so 'default-src' is used as a fallback.


XSS 공격을 막는 크롬의 CSP 정책이다. 

https://developer.chrome.com/extensions/contentSecurityPolicy



결론은 meta 태그를 생성해 별의 별 짓을 했지만, 소용없었다. 처음부터 전역 변수를 사용하기 위해 인라인 스크립트를 쓰지 않는 것이 좋다.


=> common.js라는 파일에 자바 스크립트를 정의하고 호출하는 형태만 사용 가능하다. 


하지만.. input hidden을 사용하는 방식을 사용해서 전역 변수를 활용했다.




전역 변수로 쓰일 html 파일에는 다음과 같이 정의하고,

<input type="hidden" id="kemiTag" value="@kemiTag"/>

번들(분리된) java script 파일에는 document를 읽도록 했더니. 읽히긴 한다..

console.log(document.getElementById("serviceTag"))







Posted by '김용환'
,



jquery에서는 마침표(.)가 포함된 input name을 그냥 사용하면 문제가 된다.


$('.fortune.content').val()

undefined


역슬래시 두개를 사용해야 한다.



$('.fortune\\.content').val()

"내용나옴"



Posted by '김용환'
,



html 컴포넌트에서 필드를 안보이게 하려면 다음과 같이 설정할 수 있다. 


style="display:none;"




Posted by '김용환'
,



다음에 접속해서 player를 하나 생성한다. 

https://dashboard.jwplayer.com/#/players/list


참고 : http://moonlight-ramble.tistory.com/399




먼저 어떤 형태로 서비스할 고른다.

https://dashboard.jwplayer.com/#/players/downloads


js를 내부에서 읽도록 하려려면 EMBEDDING SELF-HOSTED PLAYERS 부분을 참조한다. 관련 소스를 다운받을 수 있다. 



api key는 다음을 참조한다. 

https://support.jwplayer.com/customer/portal/articles/2339133-accessing-your-api-key-secret




css 설정을 진행한다.


.jw-icon-rewind {

 display: none !important;

}

외부 jwplayer 코드 대신 인하우스(inhouse)용으로 진행하려면 jwplayer 코드를 모두 애플리케이션에 복사해서 사용할 수 있다..



jwplayer를 사용할 수 있게 하고 간단한 설정을 진행할 수 있게 한다. 

<script type="text/javascript">


var player = jwplayer();

if (document.cookie.indexOf("jwplayerAutoStart") == -1) {

  document.cookie = "jwplayerAutoStart=1";

  player.on('ready', function() {

    player.play();

  });

}

</script>



화면에 하나의 jwplayer만 사용하려면 아래와 같이 간단히 사용한다.




<div id="legacyPlayer" align="center"></div>

<script type="text/javascript">

   jwplayer("legacyPlayer").setup({

       width:370,

       height:250,

       file: "${Guide.objectUrl}",

   });

</script>

만약 테이블에서 jwplayer를 사용하려면 다음처럼 사용한다.


(freemarker 이용 코드)


<div id="legacyPlayer${item.id}" align="center"></div>

<script type="text/javascript">

   jwplayer("legacyPlayer${item.id}").setup({

       width:370,

       height:250,

       file: "${item.objectUrl}",

   });

</script>


Posted by '김용환'
,

jquery에서 html의 테이블을 접근하려면 다음과 같이 진행한다.



$('#Table1 > tbody')



테이블 내용을 로그 화면에 출력하려면 다음과 같다.


$('#atable > tbody > tr[id]').each(function( index ) {

  console.log(index + ": " + $(this.id));

});



참조 싸이트


http://api.jquery.com/attr/


https://api.jquery.com/has-attribute-selector/







Posted by '김용환'
,

[javascript] sleep 기능

web 2017. 5. 31. 20:38


자바스크립트에서 타임아웃을 지정하려면 setTimeout 함수를 사용한다. 





setTimeout(function(){

....

}, 10000);

Posted by '김용환'
,