承接 mhsdesign/proposal-neos-ui-esm-plugin-loader 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

mhsdesign/proposal-neos-ui-esm-plugin-loader

最新稳定版本:1.0.0

Composer 安装命令:

composer require mhsdesign/proposal-neos-ui-esm-plugin-loader

包简介

Allows ES-Module Plugins to be loaded in the Neos.Ui

README 文档

README

Allows ES-Module Plugins to be loaded in the Neos.Ui, by allowing <src type="module" />

for fully compatibility with ESM Neos Ui Plugin Builder with Esbuild

Issue in the Neos.Ui

neos/neos-ui#3097

Usage

Neos.Neos.Ui.resources.javascript and stylesheets can make use of the proposed attributes array.

Neos:
  Neos:
    Ui:
      resources:
        javascript:
          'My.Cool:Plugin':
            resource: 'resource://My.Cool/Public/NeosUserInterface/Plugin.js'
            # legacy first level attribute 'defer'
            # defer: true

            # NEW Attributes!
            attributes:
              type: "module"
              defer: true
              any: "thing"

        stylesheets:
          'My.Cool:Plugin':
            # NEW Attributes!
            attributes:
              any: "thing"

Install

composer require mhsdesign/proposal-neos-ui-esm-plugin-loader

Implementation

The Neos.Ui uses a StyleAndJavascriptInclusionService, which reads the Neos.Neos.Ui.resources.javascript and builds html <src> tags from it.

This Service is now replaced in Objects.yaml with a version, which allows additional attributes.

(Line 100)

- $defer = key_exists('defer', $element) && $element['defer'] ? 'defer ' : '';
- $result .= $builderForLine($finalUri, $defer);
+ $additionalAttributes = array_merge(
+     // legacy first level 'defer' attribute
+     isset($element['defer']) ? ['defer' => $element['defer']] : [],
+     $element['attributes'] ?? []
+ );
+ $result .= $builderForLine($finalUri, $this->htmlAttributesArrayToString($additionalAttributes));

统计信息

  • 总下载量: 815
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2022-09-07

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固