juniwalk/tessa

v2.2.3 2024-06-05 11:09 UTC

README

要安装 juniwalk/tessa 的最新版本,请使用 Composer

composer require juniwalk/tessa

用法

查看 config.neon 中的测试以获取更多详细信息。

extensions:
	tessa: JuniWalk\Tessa\DI\TessaExtension

tessa:
	outputDir: %wwwDir%/static
	checkLastModified: true

	default:
		defer: true
		assets:
			- %moduleDir%/font-awesome/css/font-awesome.min.css
			- %moduleDir%/jquery/dist/jquery.min.js
			- %moduleDir%/bootstrap/dist/css/bootstrap.min.css
			- %moduleDir%/bootstrap/dist/js/bootstrap.min.js
			- %moduleDir%/nette-forms/src/assets/netteForms.min.js
			- %wwwDir%/assets/style.css
			- %wwwDir%/assets/index.js

	frontend:
		extend: default
		assets: []

	backend:
		extend: default
		assets:
			- %wwwDir%/assets/admin.js

	fullcalendar:
		defer: true
		assets:
			- %moduleDir%/fullcalendar/index.global.min.js

包含 AssetManager 特性以获取对 Tessa 组件的访问权限。

use JuniWalk\Tessa\Attributes\AssetBundle;
use JuniWalk\Tessa\Traits\AssetManager;

#[AssetBundle('frontend')]
class TessaPresenter extends Presenter
{
	use AssetManager;

	#[AssetBundle('calendar')]
	public function actionCalendar(): void {}
}

然后从 Presenter 属性在模板中渲染样式和脚本。

<!DOCTYPE html>
<html>
<head>

	<title>Tessa example</title>
	{control tessa:css}
	{control tessa:js}

</head>
<body>

	<!-- your page content -->

</body>
</html>

或者,您可以渲染包的特定部分。

<!DOCTYPE html>
<html>
<head>

	<title>Render just fullcalendar scripts</title>
	{control tessa:js 'fullcalendar'}

</head>
<body>

	<!-- your page content -->

</body>
</html>