# j-DataSource

> Компонентът зарежда данните от външния източник чрез метода AJAX() и свързва стойността според config.path.

Framework: jcomponent20
Product: jComponent 20 (jcomponent@20)
Language: bg
Content-SHA256: 6b8232fa3d9252a93c94f21f3774da3aeba71b0a396b23eb50952a2fd019619d
Snapshot: c0700e321579725c5cf4f5ace1ad7d2866d1b4f93c24a63c0b41b6b7998e976c
Sources: components@910ed1a86f6e72b4f031d3ad0dc7844f9fc5cb8e
Review: not-recorded

Компонентът зарежда данните от външния източник чрез метода `AJAX()` и свързва стойността според `config.path`.


__Конфигуриране__:

- `path {String}` _необходим_ път, където стойността ще бъде зададена
- `url {String}` опционален, URL адрес за получаване на данни
- `delay {Number}` опционално, закъснение (в милисекунди) за получаване на данни (предварително: `0`)

__Добре е да се знае__:

- `config.path = '#codelist'` определя стойност в списъците с кодове `DEF.cl.codelist`
- `config.path = '%codelist'` определя стойност като временна
- `config.path = '?.path` определя стойност в съответствие с плъгина
- `config.path = 'absolute.path` определя стойност в съответствие с пътя

__Мога ли да използвам динамичен URL адрес?__

Да, можете да използвате `<ui-component name="datasource" path="..."` за динамично получаване на данни.

```html
<ui-component name="datasource" path="?.urlcities" config="path:#cities"></ui-component>
```

__Как мога да променя данните преди обвързване?__

```html
<ui-component name="datasource" config="url:https://www.yourdomain.com/api/countries/;path:#countries">
	<script type="text/plain">
		var output = [];
		for (var item of value)
			output.push({ id: item.Id, name: item.Name });
		return output;
	</script>
</ui-component>
```

Използвайте го с `<ui-component name="datasource">`Когато компонентът все още не е зареден, jComponent Изтегляне на първия адрес в `DEF.fallback` (След това Componentator Източник: Питър Шерка Componentator Съставни съставки, лиценз на MIT.

```html example.html
<ui-component name="datasource" config="url:https://www.totaljs.com/dashboard.json;path:#mycodelist">
	<script type="text/plain">
		return value.children;
	</script>
</ui-component>

<ui-bind path="#mycodelist" config="html pre:JSON.stringify(value, null, '  ')" class="block">
	<pre></pre>
</ui-bind>
```
