mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-05-12 17:04:57 +00:00
181 lines
4.7 KiB
Markdown
181 lines
4.7 KiB
Markdown
# Alfresco Webscript Get component
|
|
|
|
<!-- markdown-toc start - Don't edit this section. npm run toc to generate it-->
|
|
|
|
<!-- toc -->
|
|
|
|
- [Basic usage](#basic-usage)
|
|
* [Properties](#properties)
|
|
- [Details](#details)
|
|
* [Webscript View HTML example](#webscript-view-html-example)
|
|
* [Webscript View DATATABLE example](#webscript-view-datatable-example)
|
|
* [Webscript View JSON example](#webscript-view-json-example)
|
|
|
|
<!-- tocstop -->
|
|
|
|
<!-- markdown-toc end -->
|
|
|
|
## Basic usage
|
|
|
|
```html
|
|
<adf-webscript-get
|
|
[scriptPath]="string"
|
|
[scriptArgs]="Object"
|
|
[contextRoot]="string"
|
|
[servicePath]="string"
|
|
[showData]="boolean"
|
|
[contentType]="JSON | HTML | DATATABLE | TEXT"
|
|
(success)= "logData($event)">
|
|
</adf-webscript-get>
|
|
```
|
|
|
|
Another example:
|
|
|
|
**app.component.html**
|
|
|
|
```html
|
|
<adf-webscript-get
|
|
[scriptPath]="scriptPath"
|
|
[scriptArgs]="scriptArgs"
|
|
[contextRoot]="contextRoot"
|
|
[servicePath]="servicePath"
|
|
[contentType]="'HTML'">
|
|
</adf-webscript-get>
|
|
```
|
|
|
|
**app.component.ts**
|
|
|
|
```ts
|
|
export class AppComponent {
|
|
scriptPath: string = 'sample/folder/Company%20Home';
|
|
contextRoot: string = 'alfresco';
|
|
servicePath: string = 'service';
|
|
}
|
|
```
|
|
|
|
### Properties
|
|
|
|
| Attribute | Type | Default | Description |
|
|
| --- | --- | --- | --- |
|
|
| scriptPath | string | | (**mandatory**) path to Web Script (as defined by Web Script) |
|
|
| scriptArgs | Object | | arguments to pass to Web Script |
|
|
| contextRoot | string | | path where application is deployed |
|
|
| scriptPath | string | alfresco | path to Web Script (as defined by Web Script) |
|
|
| contentType | string | service | path where Web Script service is mapped default value |
|
|
| contentType | string | TEXT | how to handle the data received from the web script JSON , HTML , DATATABLE or TEXT |
|
|
| showData | boolean | true | render the webscript data |
|
|
|
|
|
|
### Events
|
|
|
|
| Name | Description |
|
|
| --- | --- |
|
|
| success | You can get the plain data from the webscript through the **success** event parameter and use it as you need in your application |
|
|
|
|
**contentType** {string}
|
|
***data*** {string} data containing the plain value you get from the webscipt as an output parameter
|
|
|
|
## Details
|
|
|
|
### Webscript View HTML example
|
|
|
|
This sample demonstrates how to implement a Webscript component that renders the HTML contents that come from a webscript
|
|
This sample Web Scripts reside in your Alfresco Server. You can access the folder webscript here:
|
|
|
|
```http://localhost:8080/alfresco/service/sample/folder/Company%20Home```
|
|
|
|
```html
|
|
<adf-webscript-get
|
|
[scriptPath]="scriptPath"
|
|
[contextRoot]="'alfresco'"
|
|
[servicePath]="'service'";
|
|
[scriptPath]="'Sample/folder/Company%20Home'"
|
|
[contentType]="'HTML'">
|
|
</adf-webscript-get>
|
|
```
|
|
|
|

|
|
|
|
### Webscript View DATATABLE example
|
|
|
|
This sample demonstrates how to implement a Webscript component that renders the JSON contents that come from a webscript
|
|
|
|
```http://localhost:8080/alfresco/service/sample/folder/DATATABLE```
|
|
|
|
```html
|
|
<adf-webscript-get
|
|
[scriptPath]="scriptPath"
|
|
[contextRoot]="'alfresco'"
|
|
[servicePath]="'service'";
|
|
[scriptPath]="'Sample/folder/DATATABLE'"
|
|
[contentType]="'DATATABLE'">
|
|
</adf-webscript-get>
|
|
```
|
|
|
|
If you want to show the result from a webscript inside a ng2-alfresco-datatable you have to return from the GET of the webscript the datastructure below:
|
|
subdivide in data and schema
|
|
|
|
```ts
|
|
data: [],
|
|
schema: []
|
|
```
|
|
|
|
this is an example:
|
|
|
|
```ts
|
|
data: [
|
|
{id: 1, name: 'Name 1'},
|
|
{id: 2, name: 'Name 2'}
|
|
],
|
|
schema: [{
|
|
type: 'text',
|
|
key: 'id',
|
|
title: 'Id',
|
|
sortable: true
|
|
}, {
|
|
type: 'text',
|
|
key: 'name',
|
|
title: 'Name',
|
|
sortable: true
|
|
}]
|
|
```
|
|
|
|
or you can send just the array data and the component will create a schema for you:
|
|
|
|
```ts
|
|
data: [
|
|
{id: 1, name: 'Name 1'},
|
|
{id: 2, name: 'Name 2'}
|
|
]]
|
|
```
|
|
|
|
that will render the following table
|
|
|
|

|
|
|
|
### Webscript View JSON example
|
|
|
|
This sample demonstrates how to implement a Webscript component that renders the JSON contents that come from a webscript
|
|
This sample Web Scripts reside in your Alfresco Server. You can access the folder webscript here:
|
|
|
|
```http://localhost:8080/alfresco/service/sample/folder/JSON%EXAMPLE```
|
|
|
|
```html
|
|
<adf-webscript-get
|
|
[scriptPath]="scriptPath"
|
|
[contextRoot]="'alfresco'"
|
|
[servicePath]="'service'";
|
|
[scriptPath]="'Sample/folder/JSON_EXAMPLE'"
|
|
[contentType]="'HTML'"
|
|
[showData]="false"
|
|
(success)="logDataExample($event)">
|
|
</adf-webscript-get>
|
|
```
|
|
|
|
You can get the plain data from the webscript through the **success** event parameter and use it as you need in your application
|
|
|
|
```ts
|
|
logDataExample(data) {
|
|
console.log('You webscript data are here' + data);
|
|
}
|
|
``` |