google.script.history
는 브라우저 기록 스택과 상호작용할 수 있는 비동기 클라이언트 측 자바스크립트 API입니다. IFRAME
를 사용하는 웹 앱의 컨텍스트에서만 사용할 수 있습니다.
부가기능 또는 컨테이너 스크립트 컨텍스트의 사이드바 및 대화상자와 함께 사용하기 위한 용도는 아닙니다. 자세한 내용은 웹 앱의 브라우저 기록 사용 가이드를 참고하세요.
메서드
메서드 | 반환 유형 | 간략한 설명 |
---|---|---|
push(stateObject, params, hash) |
void |
제공된 상태 객체, URL 매개변수, URL 프래그먼트를 브라우저 기록 스택으로 푸시합니다. |
replace(stateObject, params, hash) |
void |
브라우저 기록 스택의 상위 이벤트를 제공된 상태 객체, URL 매개변수, URL 프래그먼트로 바꿉니다. |
setChangeHandler(function) |
void |
브라우저 기록의 변화에 대응하는 콜백 함수를 설정합니다. |
자세한 문서
push(stateObject, params, hash)
제공된 상태 객체, URL 매개변수, URL 프래그먼트를 브라우저 기록 스택으로 푸시합니다. 상태 객체는 개발자가 정의하는 간단한 자바스크립트 객체이며 앱의 현재 상태와 관련된 데이터를 포함할 수 있습니다. 이 메서드는 pushState() 자바스크립트 메서드와 유사합니다.
index.html
var now = new Date(); var state = { 'timestamp': now.getTime() }; var params = { 'options': "none" }; google.script.history.push(state, params, "anchor1");
매개변수
이름 | 유형 | 설명 |
---|---|---|
stateObject | Object | 브라우저 기록 이벤트와 연결되고 상태가 사라질 때 다시 표시되는 개발자 정의 객체입니다. 일반적으로 나중에 검색할 수 있도록 애플리케이션 상태 정보 (예: 페이지 데이터)를 저장하는 데 사용됩니다. |
params | Object | 이 상태와 연결할 URL 매개변수가 포함된 객체입니다. 예를 들어 {foo: “bar”, fiz: “baz”} 는 "?foo=bar&fiz=baz" 과 같습니다. 또는 배열을 사용할 수 있습니다. {foo: [“bar”, “cat”], fiz: “baz”} 는 "?foo=bar&foo=cat&fiz=baz" 와 같습니다.
null이거나 정의되지 않은 경우 현재 URL 매개변수가 변경되지 않습니다. 비어 있으면 URL 매개변수가 지워집니다.
|
hash | String | ' 문자 뒤에 표시되는 문자열 URL 프래그먼트입니다. null이거나 정의되지 않은 경우 현재 URL 프래그먼트가 변경되지 않습니다. 비어 있으면 URL 프래그먼트가 삭제됩니다. |
replace(stateObject, params, hash)
브라우저 기록 스택의 상위 이벤트를 제공된 (개발자 정의) 상태 객체, URL 매개변수, URL 프래그먼트로 바꿉니다. 그 외의 경우는 push()와 동일합니다.
index.html
var now = new Date(); var state = { 'timestamp': now.getTime() }; var params = { 'options': "none" }; google.script.history.replace(state, params, "anchor1");
매개변수
이름 | 유형 | 설명 |
---|---|---|
stateObject | Object | 브라우저 기록 이벤트와 연결되고 상태가 사라질 때 다시 표시되는 개발자 정의 객체입니다. 일반적으로 나중에 검색할 수 있도록 애플리케이션 상태 정보 (예: 페이지 데이터)를 저장하는 데 사용됩니다. |
params | Object | 이 상태와 연결할 URL 매개변수가 포함된 객체입니다. 예를 들어 {foo: “bar”, fiz: “baz”} 는 "?foo=bar&fiz=baz" 과 같습니다. 또는 배열을 사용할 수 있습니다. {foo: [“bar”, “cat”], fiz: “baz”} 는 "?foo=bar&foo=cat&fiz=baz" 와 같습니다.
null이거나 정의되지 않은 경우 현재 URL 매개변수가 변경되지 않습니다. 비어 있으면 URL 매개변수가 지워집니다.
|
hash | String | ' 문자 뒤에 표시되는 문자열 URL 프래그먼트입니다. null이거나 정의되지 않은 경우 현재 URL 프래그먼트가 변경되지 않습니다. 비어 있으면 URL 프래그먼트가 삭제됩니다. |
setChangeHandler(function)
브라우저 기록의 변경사항에 응답하도록 콜백 함수를 설정합니다. 콜백 함수는 하나의 이벤트 객체만 인수로 사용해야 합니다.
index.html
google.script.history.setChangeHandler(function (e) { console.log(e.state); console.log(e.location.parameters); console.log(e.location.hash); // Adjust web app UI to match popped state here... });
매개변수
이름 | 유형 | 설명 |
---|---|---|
function | Function | 기록 변경 이벤트 시 이벤트 객체를 유일한 인수로 사용하여 실행할 클라이언트 측 콜백 함수입니다. |
이벤트 객체
필드 | |
---|---|
e.state |
표시된 이벤트와 연결된 상태 객체입니다. 이 객체는 기록 스택에 표시된 상태를 추가한 push() 또는 replace() 메서드에서 사용된 상태 객체와 동일합니다. {"page":2, "name":"Wilbur"} |
e.location |
표시된 이벤트와 연결된 위치 객체 {"hash":"", "parameter":{"name": "alice", "n": "1"}, "parameters":{"name": ["alice"], "n": ["1", "2"]}} |