Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

addPanel 했을 때 active/deactive가 안되고 있습니다. #8

Closed
jetshin opened this issue Apr 11, 2017 · 5 comments
Closed

addPanel 했을 때 active/deactive가 안되고 있습니다. #8

jetshin opened this issue Apr 11, 2017 · 5 comments

Comments

@jetshin
Copy link

jetshin commented Apr 11, 2017

myDocker.setConfig({
			target: $('[data-ax5docker="docker1"]'),
			icons: {
				close: '<i class="fa fa-times" aria-hidden="false"></i>',
				more: '<i class="fa fa-chevron-circle-down" aria-hidden="true"></i>'
			},
			panels: [
				{
					type: "stack", // type : row, column, stack
					panels: [
						{						
							type: "panel",
					        name: "지도",
					        moduleName: "content",
					        moduleState: {
					        data1: "지도입니다.1",
					        data2: "지도입니다.2",
					        data3: "지도입니다.3"
					        }				
						}
					]
				}
			],
			disableClosePanel: false,
			disableDragPanel: true,
			control: {
				before: function (that, callback) {
					if (that.controlType === "destroy") {
						if (confirm("삭제 하시겠습니까?")) {
							setTimeout(function () {
								callback();
							}, 300);

							return;
						}
					} else {
						callback();
						return;
					}
				}
			}
		});

		myDocker.onResize = function (e) {
			console.log(e);
		};

		myDocker.addModule({
			"content": {
				init: function (container, state) {
					container["$element"].html(JSON.stringify(state));				},
				active: function (container, state) {
					// console.log(state, "active");
				},
				deactive: function (container, state) {
					// console.log(state, "deactive");
				},
				destroy: function (container, state) {
					// console.log(state, "destroy");
				}
			}
		});

		myDocker.repaint(); // play docker

이렇게 구성한 docker에서
myDocker.addPanel('0.0', 'stack', {type:'panel', name:menuNm, moduleName: 'content'});
위와 같이 패널을 추가 했을 경우 active상태가 첫번째 패널에 고정 됩니다.

@thomasJang
Copy link
Member

설명이 부족한데도 이렇게 까지 써주시고 감사합니다.
appPanel하면 탭 체인지가 안된다는 말씀인가요?

@thomasJang
Copy link
Member

https://github.com/ax5ui/ax5ui-docker/blob/master/test/index.html 여기 샘플을 봐서는 정상 작동하는 것 같습니다.

@jetshin
Copy link
Author

jetshin commented Apr 12, 2017

답변 감사합니다. 샘플 예제보고 해결 했습니다.
myDocker.addPanel('0.0', 'stack', {type:'panel', name:menuNm, moduleName: 'content', active: true});
"active: true"를 추가 하여 해결 했습니다.

그런데 위에서 알려주신 예제도 그렇고 addPanel 후 추가된 패널들을 삭제(X누름)해서 패널이 한개 남았을때 다시 addPanel을 하면 동작 하지 않습니다.
위의 예제에서 setPanel버튼을 클릭 해서 초기화 한후 addPanel 후 삭제 하였습니다.

IE 11에서 오류 입니다.
SCRIPT5007: 정의되지 않음 또는 null 참조인 'split' 속성을 가져올 수 없습니다.
ax5docker.js (200,21)

크롬에서 오류 입니다.
ax5docker.js:1105 Uncaught TypeError: Cannot read property 'panels' of undefined
at ax5docker.stack (ax5docker.js:1105)
at ax5docker.stack (ax5docker.js:1186)
at ax5docker.addPanel (ax5docker.js:1420)

thomasJang added a commit to ax5ui/ax5ui-kernel that referenced this issue Apr 16, 2017
@thomasJang
Copy link
Member

말씀해주신 상황을 재현하여 수정해보았습니다.
좀 더 빨리 오류를 잡았어야 했는데. 출장이 있어 늦어져 버렸네요.
부디 버그가 해결 되었으면 합니다.

brant-hwang pushed a commit to ax5ui/ax5ui-menu that referenced this issue Apr 16, 2017
@jetshin
Copy link
Author

jetshin commented Apr 17, 2017

감사합니다. 정상동작 합니다. ^^

@jetshin jetshin closed this as completed Apr 17, 2017
brant-hwang pushed a commit to ax5ui/ax5ui-menu that referenced this issue Sep 16, 2017
thomasJang added a commit to ax5ui/ax5ui-menu that referenced this issue Mar 8, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants