https://github.com/beyondjs/examples-static_rendering
Repository with use case for static rendering, includes layout, page and widget
https://github.com/beyondjs/examples-static_rendering
Last synced: 5 months ago
JSON representation
Repository with use case for static rendering, includes layout, page and widget
- Host: GitHub
- URL: https://github.com/beyondjs/examples-static_rendering
- Owner: beyondjs
- License: mit
- Created: 2022-08-10T19:36:23.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2022-11-11T13:38:25.000Z (over 3 years ago)
- Last Synced: 2025-06-18T00:39:17.398Z (about 1 year ago)
- Language: SCSS
- Size: 18.6 KB
- Stars: 0
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# BeyondJS examples: Static Rendering (SR)
Repositorio con caso de uso para static rendering
------------------------
BeyondJS genera un archivo estático por cada módulo basado en el contenido que va a renderizar, dicho de otra forma si un
módulo tiene un atributo(widget) o una uri(página), beyond genera un archivo por cada posible renderizado que generen
los valores configurados para el módulo.
------------------------
## Configuración
Para configurar un módulo en beyond con SR, se debe agregar un objeto "render"
dentro de la entrada "widget" del módulo y en él, especificar el tipo de renderizado que se quiere. Para SR la
configuración varía según el tipo de widget.
- ### Layouts
Los layouts no reciben atributos, solo basta con definir en true la entrada "sr" dentro de la propiedad render.
```json
"render": {
"sr": true,
"csr": false
}
```
- ### Páginas
Las páginas reciben un arreglo con las posibles urls
```json
"render": {
"csr": false,
"sr": [
"/{uri1}",
...
"/{uriN}",
]
}
```
- ### Widgets
Los widgets soportan atributos, estos deben estar configurados dentro de la propiedad "element" del widget como una
propiedad "attrs" que es un array de string con los nombres de los atributos.
```json
"widget": {
"element": {
"name": "my-widget",
"attrs": [
"atribute1",
...
"atributeN"
]
}
...
}
```
Para la configuración SR los widgets reciben un array de objetos que representan los atributos que puede recibir el
widget para cada renderizado.
```json
"render": {
"csr": false,
"sr": [
{"entry1": "value"},
...
{"entryN": "valueN"}
]
}
```
## Ejemplos
Un caso sencillo de configuración sería este:
```json
"widget": {
"element": {
"name": "my-widget",
"attrs": [
"name",
"color"
]
},
"render": {
"csr": false,
"sr": [
{"name": "Peter", "color": "blue"},
{"name": "Bob", "color": "green"}
]
}
}
```
Implementaciones soportadas para este widget con SR:
```js
```
```js
```
Implementaciones NO soportadas para este widget con SR:
```js
```
```js
```
Estos últimos dos ejemplos no están soportados, ya que las entradas no fueron definidas dentro del "sr"
en la configuración del render del módulo.
---------------------
## API
En entorno de desarrollo Beyond provee una API para visualizar los archivos generados por el SR de esta manera se tiene
información de las configuraciones realizadas y de las instancias generadas para el SR.
Para visualizar la api navegas a la url de tu proyecto con el enlace `__sr_widgets__/list`
http://localhost:{port}/__sr_widgets__/list