Definition of Extension
The extension package needs to have all the features and some basic information predefined in the package.json
file, as follows.
{
"package_version": 2,
"version": "1.0.0",
"name": "first-panel",
"tilte": "i18n:first-panel.title",
"description": "i18n:first-panel.description",
"author": "Cocos Creator",
"editor": ">=3.4.2",
"main": "./dist/main.js",
"dependencies": { ... },
"devDependencies": { ... },
"panels": { ... },
"contributions": {
},
"scripts": {
"build": "tsc -b",
"watch": "tsc -w"
}
}
package_version
Type {number} Required
The version number of the extension, which is used to submit the version verification of the extension, as well as some upgrades of the extension itself, and data migration as a basis for comparison.
version
Type {string} Required
The version number of the extension, mainly used for display, if you want to make logical judgments, package_version
is recommended.
name
Type {string} Required
The name of the extension, this name should correspond to the extension folder.
title
Type {string} Optional
The title of the extension, when title
is configured, title
will be used when the extension needs to be displayed, supports Multilingual System (i18n) configuration.
description
Type {string} Optional
The description of the extension, a brief overview of the extension's functionality. Supports Multilingual System (i18n) for multilingual syntax.
author
type {string} optional
The name of the author of the extension, which will be shown in the "Extension Manager".
editor
type {string} Optional
Description of the editor version supported by the extension, conforming to the semver
semantic version control specification.
main
type {string} Optional
A relative path to a js file that defines the function entry file. When the extension starts, the js file pointed to by the main
field will be executed and the corresponding method will be triggered or executed according to the flow.
panels
Type {[name: string]: PanelInfo} Optional
The panel information defined within the extension. You can use Editor.Panel.open('hello-world.list');
to open the defined panel. For details, please refer to Extension Panel.
contributions
type {[name: string]: any} optional
contributions
provides the ability to interact with the editor's feature system, see the documentation Extend existing functionality.
scripts
type {[name: string]: any} required
Extends the executable command line.