Un complemento es un fragmento de código independiente que agrega funcionalidad a Blockly. Por ejemplo, podría agregar un campo personalizado, definir un tema nuevo o proporcionar un renderizador personalizado. Por lo general, los complementos se empaquetan y distribuyen a través de npm.
Para obtener una introducción rápida a los complementos, consulta nuestra conferencia de descripción general de complementos (2021).
Si quieres crear tu propio complemento, consulta Cómo agregar un complemento.
Complementos propios y de terceros
El equipo de Blockly admite los complementos propios y los publica en el alcance @blockly
en npm. Están diseñados para usarse en una amplia variedad de
aplicaciones de Blockly.
Los complementos de terceros se mantienen y publican de forma independiente. Pueden ser más complejos, más experimentales o estar segmentados para un rango más reducido de aplicaciones de Blockly.
Busca un complemento
Visita Blockly Plugins & Demos, que tiene demos en vivo de complementos propios.
Busca
keyword:blockly-plugin
en npm. El equipo de Blockly publica los complementos con el permiso@blockly
. Para obtener resultados más amplios, buscakeyword:blockly
oblockly
.Consulta el directorio
blockly-samples/plugins
en GitHub, que es el repositorio de los complementos propios. Cada complemento tiene un archivo README que describe su comportamiento y uso previsto.
Instala un complemento
Recomendamos instalar complementos con un administrador de paquetes, como npm o yarn. Esto facilita la recepción de actualizaciones.
Cómo instalar un complemento con un administrador de paquetes
npm
npm install @blockly/field-angle
hilo
yarn add @blockly/field-angle
Cómo instalar un complemento sin un administrador de paquetes
unpkg
<script src="https://unpkg.com/@blockly/field-angle"></script>
También puedes clonar el repositorio de GitHub que contiene el complemento. Para los complementos propios, este es
blockly-samples
.
Consulta el archivo readme del complemento para ver si hay instrucciones de instalación adicionales.
Cómo usar un complemento
Cada complemento es diferente, así que consulta el archivo readme del complemento para obtener información sobre cómo usarlo. En el siguiente ejemplo, se muestra cómo usar el complemento @blockly/field-angle
:
Importa el código del complemento. La forma de hacerlo depende de cómo hayas instalado el complemento.
npm o yarn
import Blockly from 'blockly'; import {registerFieldAngle} from '@blockly/field-angle';
unpkg
No es necesario que uses una sentencia
import
.Repositorio clonado
import {registerFieldAngle} from 'path/to/plugin';
Inicializa el complemento según sea necesario. Los complementos que proporcionan campos personalizados a menudo requieren que registres el campo:
registerFieldAngle();
Usa el complemento.
Blockly.common.defineBlocksWithJsonArray([ { type: "my_angle_block", message0: "%1 degrees", args0: [ { // Use @blockly/field-angle. type: "field_angle", name: "FIELDNAME", value: 45, }, ], output: null, style: 'math_blocks' }, ]);
Versiones del complemento
Los complementos de blockly-samples
usan el control de versiones semántico, que requiere cambios rotundos para usar una nueva versión principal. Cualquier complemento nuevo que realice parches de mono en el núcleo tendrá una versión principal de 0 para indicar el desarrollo inicial.
La mayoría de los complementos incluyen el paquete blockly
como un peerDependency
en lugar de un dependency
. Esto se debe a que suponemos que ya instalaste Blockly. (No tiene sentido usar un complemento sin usar Blockly). Esto te permite administrar la versión de Blockly por tu cuenta, pero también requiere que verifiques el package.json
del complemento para determinar la versión mínima de Blockly que requiere. Si se actualiza un complemento para que necesite una versión más reciente de Blockly,
se considera un cambio rotundo y se aumentará su versión principal.
Cuando agregas un complemento a la package.json
de tu aplicación, la configuración predeterminada es incluir un signo de intercalación antes de la versión:
"dependencies": {
"@blockly/field-angle": "^5.0.12"
}
Esto permitirá que npm instale cualquier versión menor a la versión indicada o superior a ella, por lo que la versión 5.0.20
o 5.1.0
funcionará, pero no una versión principal nueva, como 6.0.1
. Cuando actualices a una nueva versión de Blockly, te recomendamos que compruebes si alguno de tus complementos también se puede actualizar a una nueva versión principal.