Magento 2의 UI 양식 구성 요소 구성 파일에는 종종 - item
와 동일한 속성이 표시 됩니다.source
<item name="source" xsi:type="string">block</item>
#File: vendor/magento/module-cms/view/adminhtml/ui_component/cms_block_form.xml
<field name="title">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Block Title</item>
<item name="formElement" xsi:type="string">input</item>
<item name="source" xsi:type="string">block</item>
<item name="sortOrder" xsi:type="number">20</item>
<item name="dataScope" xsi:type="string">title</item>
<item name="validation" xsi:type="array">
<item name="required-entry" xsi:type="boolean">true</item>
</item>
</item>
</argument>
</field>
이 분야는 무엇입니까? 필요하지 않은 것 같아서 묻습니다 . 예를 들어이 GitHub 리포지토리의 모듈은 작동하는 UI 구성 요소 양식을 구성 하지만 이러한 name="source"
항목 은 사용하지 않습니다 .
이 name="source"
품목들이 무엇인지 아는 사람이 있습니까? XML을 가져 와서 x-magento-init
JSON으로 구성하는 UI 구성 요소 메커니즘을 알고 있습니다.
"block_id": {
"type": "form.input",
"name": "block_id",
"dataScope": "block_id",
"config": {
"component": "Magento_Ui\/js\/form\/element\/abstract",
"template": "ui\/form\/field",
"visible": false,
"dataType": "text",
"formElement": "input",
"source": "block"
}
},
어떤가에 공급 uiElement
기반 녹아웃 뷰 모델 객체. 그러나 uiElement
기반 녹아웃 뷰 모델 객체 의 중첩 트리에서 이러한 필드 수준 source
필드를 사용 하는 방법은 명확하지 않습니다 .
uiElement
의 initModules
방법을 보면
initModules: function () {
_.each(this.modules, function (name, property) {
if (name) {
this[property] = this.requestModule(name);
}
}, this);
if (!_.isFunction(this.source)) {
this.source = registry.get(this.provider);
}
return this;
},
객체가 source
속성을 참조하는 것을 보았습니다. 설정되지 않은 경우 provider
속성을 문자열 / 키 식별자로 사용하여 객체의 레지스트리에 도달합니다 . 그것은 처럼 보인다 이러한 값 source
항목이 사용되지 않습니다. 그러나 PHP 코드 또는 다른 자바 스크립트 코드에서 사용될 수 있습니다. 따라서 내 질문입니다.
source
XML 파일 에서 수행중인 작업 과 동일한 질문으로 끝납니다.