packagefactory/atomicfusion-constants

此包已被废弃,不再维护。未建议替代包。
此包的最新版本(v1.0.0)没有提供许可证信息。

Neos.Fusion 的附加语言构造常数

v1.0.0 2018-04-11 15:26 UTC

This package is auto-updated.

Last update: 2022-11-24 16:01:33 UTC


README

作为融合语言构造的常数

警告!

这是实验性技术。常数目前不是融合语言的一部分。但是,您可以安装此包以使此功能可用于您的项目。

我们的目标是将来将其作为融合核心的一部分。不过,语法、作用域和实现细节可能与此处展示的内容有所不同。

安装

PackageFactory.AtomicFusion.Constants 通过 packagist 提供。您可以使用 composer 安装此包

composer require packagefactory/atomicfusion-constants

我们使用语义版本控制,每次重大更改都会增加主版本号。

用法

此包引入了 const: 声明,允许您在融合文件中定义常数。使用 const::* 您可以在融合文件中的任何位置使用定义的常数。

const: PI = 3.14

prototype(Vendor.Site:MyCircleArea) < prototype(PackageFactory.AtomicFusion:Component) {
	radius = 5
	renderer = ${const::PI * props.radius * props.radius}
}

常数的作用域限于它们被定义的文件中,并且在该文件内不能被覆盖或重新声明。

常数名称必须全部大写,可以包含字母、数字和下划线。名称必须以字母或下划线开头。

魔法常数

__FILE__

类似于 PHP 的 __FILE__ 常数,您可以使用 const::__FILE__ 来引用当前融合文件的位置。

prototype(Vendor.Site:MyContentElement) < prototype(Neos.Fusion:Template) {
	@process.attachFileName = ${value + '<br>Brought to you by ' + const::__FILE__}
}

__DIR__

类似于 PHP 的 __DIR__ 常数,您可以使用 const::__DIR__ 来引用当前融合文件的目录。

prototype(Vendor.Site:MyContentElement) < prototype(Neos.Fusion:Template) {
	templatePath = ${const::__DIR__ + '/MyContentElement.html'}
}

许可证

查看 LICENSE 文件