API参考
kinlink JavaScript API的综合文档。
kinlink JavaScript API提供了一组函数和事件,允许您自定义kinlink表单的行为。本参考文档涵盖了所有可用的API及其使用方法。
核心API
kinlink API可通过全局window.kinlink对象访问,该对象提供对以下核心API的访问:
kinlink-api-structure.js
// Global kinlink object
window.kinlink = {
// Form operations API
formApi: {
getFieldValue, setFieldValue, getAllValues, setFieldsValue,
hideField, showField, visuallyHideField, getFieldState,
disableField, enableField,
addFieldValidator, removeFieldValidator, validateField, validateForm,
setFieldError, clearFieldError, setFieldsErrors,
// ... and more
},
// Layout control API
layoutApi: {
getHeaderHeight, isHeaderVisible, hideHeader, showHeader,
getFooterHeight, isFooterVisible, hideFooter, showFooter,
isSubmitButtonVisible, hideSubmitButton, showSubmitButton,
// ... and more
},
// Event system
events: {
on, off
},
// Event types
FormEvents: {
FORM_LOADED, FIELD_CHANGE, BEFORE_SUBMIT, AFTER_SUBMIT
},
// Proxy for external API calls
proxy: (url, method, headers, body) => Promise<any>,
// Other properties
version: "1.0.0",
formFields: { /* field configuration */ }
}API使用入门
要使用kinlink API,您通常会编写在表单加载时或特定事件发生时运行的JavaScript代码。以下是一个简单的示例:
example-usage.js
(function() {
// Listen for the form loaded event
kinlink.events.on(kinlink.FormEvents.FORM_LOADED, () => {
const form = kinlink.formApi;
// Hide a field initially
form.hideField('additionalInfo');
// Add a custom validator to the email field
form.addFieldValidator('email', (value) => {
if (!value) return;
if (!/^\w+@\w+\.\w+$/.test(value)) {
return 'Please enter a valid email address';
}
return undefined; // Validation passed
});
});
// Listen for field changes
kinlink.events.on(kinlink.FormEvents.FIELD_CHANGE, (data) => {
const { fieldName, value } = data;
const form = kinlink.formApi;
// Show/hide the additional info field based on the type field
if (fieldName === 'type' && value === 'premium') {
form.showField('additionalInfo');
} else if (fieldName === 'type') {
form.hideField('additionalInfo');
}
});
})();浏览特定的API部分,了解每个函数和事件的详细文档: