getFormByMarker
Lấy một đối tượng biểu mẫu theo marker.
Mô tả
Phương thức này truy xuất một đối tượng biểu mẫu duy nhất dựa trên định danh văn bản (marker) của nó từ API. Nó trả về một Promise mà khi hoàn thành sẽ trả về một đối tượng FormEntity.
Forms.getFormByMarker(
marker*,
langCode
);
Sơ đồ tham số
Sơ đồ
marker(bắt buộc): string
Marker của biểu mẫu
ví dụ: "contact_form"
langCode: string
Mã ngôn ngữ. Mặc định: "en_US"
ví dụ: "en_US"
Ví dụ
Ví dụ tối thiểu
const response = await Forms.getFormByMarker('my-form');
Ví dụ với các thuộc tính
const response = await Forms.getFormByMarker('my-form', 'en_US');
Ví dụ phản hồi
{
"id": 6,
"attributeSetId": 15,
"type": "data",
"localizeInfos": {
"title": "Test form",
"titleForSite": "",
"successMessage": "",
"unsuccessMessage": "",
"urlAddress": "",
"database": "0",
"script": "0"
},
"version": 14,
"position": 1,
"identifier": "test-form",
"processingType": "script",
"templateId": null,
"attributes": [
{
"type": "string",
"marker": "name",
"isLogin": false,
"isSignUp": false,
"position": 1,
"settings": {},
"isVisible": true,
"isPassword": false,
"listTitles": [],
"validators": {
"requiredValidator": {
"strict": true
},
"stringInspectionValidator": {
"stringMax": 0,
"stringMin": 0,
"stringLength": 0
}
},
"initialValue": null,
"localizeInfos": {
"title": "Name"
},
"additionalFields": {
"additional_field": {
"type": "string",
"value": "Additional field data",
"marker": "additional_field"
}
},
"isSignUpRequired": false,
"isNotificationEmail": false,
"isNotificationPhoneSMS": false,
"isNotificationPhonePush": false
},
{
"type": "file",
"marker": "file",
"isLogin": false,
"isSignUp": false,
"position": 2,
"settings": {},
"isVisible": true,
"isPassword": false,
"listTitles": [],
"validators": {},
"initialValue": null,
"localizeInfos": {
"title": "File"
},
"additionalFields": {},
"isSignUpRequired": false,
"isNotificationEmail": false,
"isNotificationPhoneSMS": false,
"isNotificationPhonePush": false
}
],
"total": "1",
"moduleFormConfigs": [
{
"id": 2,
"moduleIdentifier": "content",
"isGlobal": false,
"isClosed": false,
"viewOnlyUserData": false,
"commentOnlyUserData": false,
"entityIdentifiers": [
{
"id": "blog",
"isNested": false
}
],
"ratingCalculation": "average",
"allowHalfRatings": null,
"maxRatingScale": null,
"isAnonymous": null,
"allowRerating": null,
"isRating": null
}
]
}
Sơ đồ phản hồi
Sơ đồ: IFormsEntity
id: number
Định danh của đối tượng.
ví dụ: 12345
attributeSetId: number | null
Định danh của bộ thuộc tính đang được sử dụng, hoặc null nếu không áp dụng.
ví dụ: 1234
type: string | null
Loại biểu mẫu.
ví dụ: "contact"
localizeInfos: IFormLocalizeInfo
Tên của biểu mẫu và các trường địa phương hóa phía biểu mẫu (tin nhắn thành công/lỗi, cấu hình xử lý, v.v.).
ví dụ:
{
"key": "value"
}
version: number
Số phiên bản của đối tượng.
ví dụ: 1
position: number
Vị trí của đối tượng.
ví dụ: 1
identifier: string
Định danh văn bản cho trường bản ghi.
ví dụ: "form_contact_us"
processingType: string
Loại xử lý biểu mẫu.
ví dụ: "async"
templateId: number | null
Định danh của mẫu được sử dụng bởi biểu mẫu, hoặc null nếu không có mẫu nào được sử dụng.
ví dụ: 6789
attributes: IFormAttribute[]
Các trường biểu mẫu với địa phương hóa của chúng, bộ xác thực và cờ cụ thể cho biểu mẫu.
attributes.marker: string
Marker trường (tên máy).
ví dụ: "email"
attributes.type: AttributeType
Loại dữ liệu thuộc tính (ví dụ: "string", "file").
attributes.position: number
Vị trí sắp xếp của trường.
ví dụ: 1
attributes.isVisible: boolean
Liệu trường có được hiển thị cho người dùng hay không.
ví dụ: true
attributes.localizeInfos: IAttributeLocalizeInfo
Nhãn địa phương hóa cho trường. Đối với các thuộc tính timeInterval, cũng mang theo tải trọng lịch intervals.
attributes.initialValue: unknown
Giá trị mặc định được áp dụng khi trường không được điền.
attributes.listTitles: IListTitle[]
Các tùy chọn đã định nghĩa trước cho các trường list/radioButton; mảng rỗng cho các loại khác.
listTitles.title: string
Tiêu đề hoặc tên liên quan đến mục trong danh sách.
ví dụ: "Tên Mục"
listTitles.value: number | string
Giá trị của mục trong danh sách, có thể là số hoặc chuỗi tùy thuộc vào ngữ cảnh.
ví dụ: 42
listTitles.position: string | number | null
Vị trí của mục trong danh sách, có thể được biểu diễn dưới dạng chuỗi, số hoặc null nếu không áp dụng.
ví dụ: 1
listTitles.extended: object
Một đối tượng chứa các thuộc tính hoặc siêu dữ liệu bổ sung liên quan đến mục trong danh sách. Điều này có thể bao gồm bất kỳ chi tiết bổ sung nào mở rộng thông tin cơ bản.
listTitles.extended.value: string | null
Giá trị mở rộng, có thể là chuỗi hoặc null.
ví dụ: "extra_value"
listTitles.extended.type: string | null
Loại của giá trị mở rộng, có thể là chuỗi hoặc null.
ví dụ: "color"
attributes.validators: IAttributeValidators
Các quy tắc xác thực; đối tượng rỗng khi không có bộ xác thực nào được cấu hình.
validators.requiredValidator: object
Đánh dấu trường là bắt buộc. Hình dạng: { strict: boolean }.
ví dụ: { strict: true }
validators.stringInspectionValidator: object
Ràng buộc độ dài cho các trường chuỗi. Hình dạng: { stringMin: number; stringMax: number; stringLength: number }.
validators.emailInspectionValidator: boolean
Chuyển đổi cho xác thực định dạng email.
validators.defaultValueValidator: object
Cấu hình giá trị mặc định với văn bản lỗi tùy chọn. Hình dạng: { customErrorText?: string; fieldDefaultValue?: unknown; fieldDefaultValue2?: unknown }.
attributes.settings: Record<string, unknown>
Cấu hình cụ thể cho trường; đối tượng rỗng theo mặc định.
attributes.additionalFields: Record<string, IFormAttributeAdditionalField>
Các trường con lồng nhau được đánh chỉ mục theo marker; đối tượng rỗng khi không có.
attributes.isLogin: boolean
Liệu trường này có chứa giá trị đăng nhập được sử dụng cho xác thực hay không.
ví dụ: false
attributes.isSignUp: boolean
Liệu trường này có bắt buộc trong quá trình đăng ký hay không.
ví dụ: false
attributes.isNotificationEmail: boolean
Liệu trường này có lưu trữ email được sử dụng cho thông báo hay không.
ví dụ: false
attributes.isNotificationPhonePush: boolean
Liệu trường này có lưu trữ số điện thoại được sử dụng cho thông báo đẩy hay không.
ví dụ: false
attributes.isNotificationPhoneSMS: boolean
Liệu trường này có lưu trữ số điện thoại được sử dụng cho thông báo SMS hay không.
ví dụ: false
total: number | string
Tổng số lượng mục liên quan.
ví dụ: "1"
moduleFormConfigs: IFormConfig[]
Mảng các cấu hình biểu mẫu mô-đun liên quan đến biểu mẫu.
moduleFormConfigs.id: number
Định danh của cấu hình biểu mẫu.
ví dụ: 123
moduleFormConfigs.formIdentifier: string
Định danh biểu mẫu (chỉ trong API sản phẩm/trang).
ví dụ: "review"
moduleFormConfigs.moduleIdentifier: string
Định danh của mô-đun liên quan đến cấu hình biểu mẫu.
ví dụ: "module_identifier"
moduleFormConfigs.isGlobal: boolean
Chỉ ra liệu cấu hình biểu mẫu có toàn cầu hay không.
ví dụ: true
moduleFormConfigs.isClosed: boolean
Chỉ ra liệu cấu hình biểu mẫu có bị đóng hay không.
ví dụ: true
moduleFormConfigs.isModerate: boolean
Chỉ ra liệu biểu mẫu có yêu cầu kiểm duyệt hay không (chỉ trong API sản phẩm/trang).
ví dụ: false
moduleFormConfigs.viewOnlyUserData: boolean
Chỉ ra liệu cấu hình biểu mẫu có cho phép xem dữ liệu người dùng hay không (sử dụng trong API biểu mẫu).
ví dụ: true
moduleFormConfigs.commentOnlyUserData: boolean
Chỉ ra liệu cấu hình biểu mẫu có cho phép bình luận về dữ liệu người dùng hay không (sử dụng trong API biểu mẫu).
ví dụ: true
moduleFormConfigs.viewOnlyMyData: boolean
Chỉ ra liệu cấu hình biểu mẫu có cho phép xem dữ liệu của tôi hay không (sử dụng trong API sản phẩm/trang).
ví dụ: false
moduleFormConfigs.commentOnlyMyData: boolean
Chỉ ra liệu cấu hình biểu mẫu có cho phép bình luận về dữ liệu của tôi hay không (sử dụng trong API sản phẩm/trang).
ví dụ: false
moduleFormConfigs.entityIdentifiers: object[]
Một mảng các định danh thực thể liên quan đến cấu hình biểu mẫu.
moduleFormConfigs.nestedEntityIdentifiers: string[]
Một mảng các chuỗi định danh thực thể lồng nhau (chỉ trong API sản phẩm/trang).
ví dụ: ["catalog"]
moduleFormConfigs.exceptionIds: string[]
Một mảng các định danh ngoại lệ.
moduleFormConfigs.formDataCount: number
Tổng số lượng mục dữ liệu biểu mẫu (chỉ trong API sản phẩm/trang).
ví dụ: 306
moduleFormConfigs.entityFormDataCount: Record<string, number>
Số lượng dữ liệu biểu mẫu theo định danh thực thể (chỉ trong API sản phẩm/trang).
ví dụ: {"catalog": 306}
moduleFormConfigs.isRating: boolean | null
Chỉ ra liệu cấu hình biểu mẫu này có dành cho đánh giá hay không.
ví dụ: null
moduleFormConfigs.isAnonymous: boolean | null
Chỉ ra liệu các bài gửi ẩn danh có được phép hay không.
ví dụ: null
moduleFormConfigs.allowHalfRatings: boolean | null
Chỉ ra liệu các đánh giá nửa có được phép hay không.
ví dụ: null
moduleFormConfigs.allowRerating: boolean | null
Chỉ ra liệu việc đánh giá lại có được phép hay không.
ví dụ: null
moduleFormConfigs.maxRatingScale: number | null
Giá trị tối đa của thang đánh giá.
ví dụ: 5
moduleFormConfigs.ratingCalculation: string
Phương pháp tính toán đánh giá.
ví dụ: "average"