질문
params에 입력한 값을 처리할 때 공백을 없앨 수 있나요?
답변
네 JavaScript trim 또는 replace를 통해 공백을 제거할 수 있습니다.
Fn 관련 팁
validateFn 에서 JS를 적용하시는 경우에는 프론트(앞단)에서 검증하게 되고
실제 실행 직전에 값을 변경하고 싶을때는 requestFn 에서 적용하시면 됩니다.
예제 YAML
- type: query
name: trim
resource: mysql.sample
sqlType: insert
sql: select 1
params:
- key: test
# value: ' 1 2 3'
requestFn: |
const testParam = params.find(e => e.key === 'test');
if (testParam.value) {
testParam.value = testParam.value.trim(); // 앞뒤 공백 제거
}
console.log('requestFn', testParam);
return true;
- type: query
name: trim + replace
resource: mysql.sample
sqlType: insert
sql: select 1
params:
- key: test2
# value: ' 1 2 3'
requestFn: |
const test2Param = params.find(e => e.key === 'test2');
if (test2Param && test2Param.value) {
// trim()으로 앞뒤 공백 제거 후, 연속된 공백을 단일 공백으로 변경
test2Param.value = test2Param.value.trim().replace(/\s+/g, '');
}
console.log('requestFn2', test2Param);
return true;
관련하여 도움이 필요하시면 문의주세요.
감사합니다.