
Ich habe Schwierigkeiten beim Versuch, den Vollkalender über Composer zu installieren (composer.phar erfordert "bower-asset/fullcalendar"), es zieht nicht denmain.cssUndHaupt-JSDateien. Also muss ich das manuell machen, indem ich die Dateien herunterlade vonHier.
Ich wollte nur bestätigen, dass es sich hierbei um einen Fehler oder ein Feature handelt.
Danke
Antwort1
Seit Yii 2.0.13 sind sowohl die grundlegenden als auch die erweiterten Anwendungsvorlagen für die Verwendung von Asset-Packagist vorkonfiguriert.
Da Sie das Yii2-Framework verwenden und Composer zum Installieren des FullCalendar-Plugins und der benötigten Assets verwenden möchten, ist dies das empfohlene Verfahren:
- (optional) Erstellen Sie eine grundlegende Projektvorlage:
composer create-project --prefer-dist yiisoft/yii2-app-basic fullcalendar-yii-basic
- Ändern Sie Ihr Arbeitsverzeichnis in das Stammverzeichnis Ihres Projekts:
cd fullcalendar-yii-basic
- Installieren Sie das FullCalendar-Paket mit Asset-Packagist (bereits konfiguriert bei Verwendung einer Yii 2-Projektvorlage):
composer require npm-asset/fullcalendar
Quelle:
Sie finden die Dateien main.css und main.js im Ordner vendor/npm-asset/fullcalendar
.
Um sie in Yii zu verwenden, sollten Sie ein AssetBundle wie dieses erstellen (legen Sie es in den Ordner „Assets“):
<?php
namespace app\assets;
use yii\web\AssetBundle;
/**
* Fullcalendar asset bundle.
*/
class FullcalendarAsset extends AssetBundle
{
public $sourcePath = '@npm/fullcalendar';
public $css = [
YII_ENV_DEV ? 'main.css' : 'main.min.css'
];
public $js = [
YII_ENV_DEV ? 'main.js' : 'main.min.js',
YII_ENV_DEV ? 'locales-all.js' : 'locales-all.min.js'
];
}
Aus Ihrer Sicht müssen Sie dieses AssetBundle registrieren:
<?php
/* @var $this yii\web\View */
use app\assets\FullcalendarAsset;
FullcalendarAsset::register($this);
$this->title = 'My Yii Application';