# j-DataSource

> Komponenten laddar data från den externa källan via AJAX()-metoden och det binder värdet enligt config.path.

Framework: jcomponent20
Product: jComponent 20 (jcomponent@20)
Language: sv
Content-SHA256: 2b94cf7396aa03e330b6f55d7f2d9bb03f4798f4d68b7bb2f9dc4be19083a1c0
Snapshot: c0700e321579725c5cf4f5ace1ad7d2866d1b4f93c24a63c0b41b6b7998e976c
Sources: components@910ed1a86f6e72b4f031d3ad0dc7844f9fc5cb8e
Review: not-recorded

Komponenten laddar data från den externa källan via `AJAX()`-metoden och bindar värdet enligt `config.path`.


__Konfigurera__:

- `path {String}` __behovet__ en väg där värdet kommer att ställas in
- `url {String}` alternativ, en URL för att få data
- `delay {Number}` valfritt, en försening (i millisekunder) för att få data (default: `0`)

__Bra att veta__:

- `config.path = '#codelist'` anger ett värde i kodlistor `DEF.cl.codelist`
- `config.path = '%codelist'` sätter ett värde i
- `config.path = '?.path` sätter ett värde enligt pluginsvägen
- `config.path = 'absolute.path` sätter ett värde enligt vägen

__Kan jag använda en dynamisk URL?__

Ja, du kan använda `<ui-component name="datasource" path="..."` för dynamisk inhämtning av data.

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

__Hur kan jag ändra data innan jag binder?__

```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>
```

Använd den med `<ui-component name="datasource">`När komponenten ännu inte är laddad, jComponent Ladda ner den första gången från adressen i `DEF.fallback` (en av Componentator Författare: Peter Širka. källa: The Componentator Komponenterna i lager, MIT licens.

```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>
```
