셀렉트에서는 requestFn, responseFn 기능을 이용하여
sessionStorage나 localStorage에 저장하여 데이터를 받고 전달할 수 있습니다.
아래는 localStorage 예제입니다.
예제
menus:
- path: custom-script
name: custom-script
pages:
- path: custom-script
blocks:
- type: query
resource: mysql.qa
sql: SELECT NOW()
actions:
- label: 테스트키 발급
single: true
requestFn: |
if (localStorage.TEST_KEY) {
throw new Error('이미 키가 있습니다.')
}
type: query
resource: mysql.qa
sql: SELECT NOW()
toast: 발급 완료
responseFn: |
localStorage.TEST_KEY = 1234
alert(`신규 발급: ${ localStorage.TEST_KEY }`)
- label: 테스트키 삭제
single: true
type: query
resource: mysql.qa
sql: SELECT NOW()
toast: 삭제 완료
responseFn: |
delete localStorage.TEST_KEY
결과 페이지
테스트키 발급 시
테스트키 발급 버튼 다시 눌렀을 때
localStorage에 저장되어 이미 키가 있는 것으로 확인됩니다.
테스트키 삭제 시
삭제 후 다시 localStorage에 키를 저장할 수 있습니다.