Вместо написания кода CSS или JS разработчики часто используют расширенный синтаксис, такой как LESS, SCSS, Stylus для CSS и TypeScript, CoffeeScript для JS. Затем они используют специальные инструменты для преобразования этих файлов в реальные CSS и JS.
Менеджер активов в Yii автоматически преобразует активы в расширенном синтаксисе в CSS и JS. Когда представление отображается, оно будет включать файлы CSS и JS на странице, а не исходные ресурсы в расширенном синтаксисе.
Шаг 1 — Модифицируйте файл DemoAsset.php таким образом.
<?php
namespace app\assets;
use yii\web\AssetBundle;
use yii\web\View;
class DemoAsset extends AssetBundle {
public $basePath = '@webroot';
public $baseUrl = '@web';
public $js = [
'js/demo.js',
'js/greeting.ts'
];
public $jsOptions = ['position' => View::POS_HEAD];
}
?>
Мы только что добавили машинописный файл.
Шаг 2 — Внутри каталога web / js создайте файл с именемreeting.ts со следующим кодом.
class Greeter {
constructor(public greeting: string) { }
greet() {
return this.greeting;
}
};
var greeter = new Greeter("Hello from typescript!");
console.log(greeter.greet());
В приведенном выше коде мы определяем класс Greeter с помощью одного метода greet () . Мы пишем наше приветствие на хромированной консоли.
Шаг 3 — Перейдите по URL-адресу http: // localhost: 8080 / index.php . Вы заметите, что файл welcome.ts преобразуется в файл приветствия.js, как показано на следующем снимке экрана.
