Socket
Book a DemoInstallSign in
Socket

@thingjs-x4/xplugin-core

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@thingjs-x4/xplugin-core

xplugin核心组件包,完成插件生命周期配置实现

0.2.6
latest
npmnpm
Version published
Weekly downloads
10
Maintainers
1
Weekly downloads
 
Created
Source

@thingjs-x4/xplugin-core

xplugin-core

xplugin-core is the Core Component for ThingJS-X Plug-in Development

Install

Using npm:

$ npm i -g npm
$ npm install --save @thingjs-x4/xplugin-core

Usage


    //方式一:

    /**
     * 引入系统插件
     * 
     * @date 2022.07.27
     * @copyright uino 2022
     * @version Revision
     * @class CorePlugin
     * @constructor
     * @property readonly name 获取资源(插件)名称
     * @property readonly uri 获取资源(插件)包路径
     * @property readonly config 获取资源(插件)配置项信息
     * @property readonly app 获取3D操作类库
     * @property readonly map 获取3D.地图操作类库
     * @property readonly THINGX 获取ThingJS-X 操作类库 API
     * @method setName::设置插件名称
     * @method onInstall::生命周期函数,插件安装完成载入执行
     * @method onBeforeInit::系统初始化前载入
     * @method onInited::系统初始化完成载入
     * @method onBeforeLoad::场景加载前载入
     * @method onBeforeLoadEarth::地球场景加载前载入
     * @method onEarthLoaded::地球场景加载完成载入
     * @method onBeforeLoadCampus::园区场景加载前载入
     * @method onCampusLoaded::园区场景加载完成载入
     * @method onLoaded::场景加载完成后载入
     * 
     * */
    import CorePlugin 
        from "@thingjs-x4/xplugin-core/dist/plugin/core/CorePlugin";
    export default class extends CorePlugin {
        constructor() {
            super();
        }
        //... 完成其插件能力相关功能
    }

    /**
     * 引入扩展插件
     * 
     * @date 2022.07.27
     * @copyright uino 2022
     * @version Revision
     * @class ExpandPlugin
     * @constructor
     * @property readonly name 获取资源(插件)名称
     * @property readonly uri 获取资源(插件)包路径
     * @property readonly config 获取资源(插件)配置项信息
     * @property readonly app 获取3D操作类库
     * @property readonly map 获取3D.地图操作类库 
     * @property readonly THINGX 获取ThingJS-X 操作类库 API
     * @property readonly readonly viewName 获取资源UI组件定义名称
     * @method setName::设置插件名称
     * @method onInstall::生命周期函数,插件安装完成载入执行
     * 
     * */
    import ExpandPlugin 
        from "@thingjs-x4/xplugin-core/dist/plugin/expand/ExpandPlugin";
    import IndexVue from './index.vue';//插件可支持vue ui组件,创建引入即可
    export default class extends ExpandPlugin {
        constructor() {
            super(IndexVue);
        }
         //... 完成其插件能力相关功能
    };

    /**
     * 引入面板插件
     * 
     * @date 2022.07.27
     * @copyright uino 2022
     * @version Revision
     * @class PanelPlugin
     * @constructor
     * @property readonly name 获取资源(插件)名称
     * @property readonly uri 获取资源(插件)包路径
     * @property readonly config 获取资源(插件)配置项信息
     * @property readonly app 获取3D操作类库
     * @property readonly map 获取3D.地图操作类库 
     * @property readonly THINGX 获取ThingJS-X 操作类库 API
     * @property readonly viewName 获取资源UI组件定义名称
     * @method setName::设置插件名称
     * @method onInstall::生命周期函数,插件安装完成载入执行
     * @method onInited::面板插件初始化完成后载入
     * @method onActivate::面板插件被激活完成后
     * @method onDeactivate::面板插件切换取消激活完成后载入
     * @method onLevelChange::层级切换完成后载入
     * 
     * */
    import PanelPlugin 
        from "@thingjs-x4/xplugin-core/dist/plugin/panel/PanelPlugin";
    import IndexVue from './index.vue'//插件可支持vue ui组件,创建引入即可    
    export default class extends PanelPlugin {

        constructor() {
            super(IndexVue);
        }
         //... 完成其插件能力相关功能
    };

    /**
     * 引入场景图层插件
     * 
     * @date 2022.07.27
     * @copyright uino 2022
     * @version Revision
     * @class LayerPlugin
     * @constructor
     * @property readonly name 获取资源(插件)名称
     * @property readonly uri 获取资源(插件)包路径
     * @property readonly config 获取资源(插件)配置项信息
     * @property readonly app 获取3D操作类库
     * @property readonly map 获取3D.地图操作类库 
     * @property readonly THINGX 获取ThingJS-X 操作类库 API
     * @property readonly viewName 获取资源UI组件定义名称
     * @method onInited ::场景图层插件初始化完成后载入
     * @method onActivate ::场景图层插件被激活完成后
     * @method onDeactivate ::场景图层插件切换取消激活完成后载入
     * @method onLevelChange ::层级切换完成后载入
     * 
     * */
    import LayerPlugin 
        from "@thingjs-x4/xplugin-core/dist/plugin/layer/LayerPlugin";
    import IndexVue from './index.vue'//插件可支持vue ui组件,创建引入即可
    export default class extends LayerPlugin {
        constructor() {
            super(IndexVue);
        }
        //... 完成其插件能力相关功能
    };

    /**
     * 引入场景控制插件
     * 
     * @date 2022.07.27
     * @copyright uino 2022
     * @version Revision
     * @class ControlPlugin
     * @constructor
     * @property readonly name 获取资源(插件)名称
     * @property readonly uri 获取资源(插件)包路径
     * @property readonly config 获取资源(插件)配置项信息
     * @property readonly app 获取3D操作类库
     * @property readonly map 获取3D.地图操作类库 
     * @property readonly THINGX 获取ThingJS-X 操作类库 API
     * @method onInited ::场景控制插件初始化完成后载入
     * @method onActivate ::场景控制插件被激活完成后
     * @method onDeactivate ::场景控制插件切换取消激活完成后载入
     * @method onLevelChange ::层级切换完成后载入
     * @method setActivateImage ::设置激活态按钮背景图片
     * @method setDeactivateImage ::设置非激活态按钮背景图片
     * 
     * */
    import ControlPlugin 
        from "@thingjs-x4/xplugin-core/dist/plugin/control/ControlPlugin";
    export default class extends ControlPlugin {
        constructor() {
            super();
        }
    }
  

   /**
    * 或方式二有选择性方式引入
    * */
    import {
        CorePlugin,
        ExpandPlugin, PanelPlugin,
        LayerPlugin, ControlPlugin,
    } from "@thingjs-x4/xplugin-core/index";

    //... 选择性引入,完成其相关能力
   

Documentation

xplugin-core for ThingJS-X docs

   @thingjs-x4/xplugin-core  是用于构建 ThingJS-X(零代码平台) 
   插件开发的核心插件 JavaScript 库,该函数库涵括了ThingJS-X 插件包括不限于
   系统插件、扩展插件、面板插件、场景图层插件、场景控制插件等
   同时使用Vue 框架及生态 并提供了一套声明式的、组件化的编程模型
   帮助你高效地开发 ThingJS-X 相关能力插件

Full Docs

Keywords

xplugin-cli

FAQs

Package last updated on 29 May 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

About

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.

  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc

U.S. Patent No. 12,346,443 & 12,314,394. Other pending.