不同于写CSS或JS代码,开发人员经常使用扩展语法,如 LESS, SCSS, 手写CSS和TypeScript,CoffeeScript。 然后需要使用专用工具将这些文件转换成真正的CSS和JS。
Yii中 assets 资源管理转换扩展语法自动注入CSS和JS。当视图显示,它将在页面包函 CSS和JS文件,而不是在扩展语法原有 assets 资源。
第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]; } ?>
我们只是增加了一个 typescript 文件。
第2步 - 在 web/js 目录下,创建一个名为 greeting.js 文件并使用下面的代码。
class Greeter { constructor(greeting:string) { } greet() { return this.greeting; } }; var greeter = new Greeter("Hello From TypeScript!"); console.log(greeter.greet());
在上面的代码中,我们定义了一个Greeter类并有一个 greet()方法。我们写的问候语在Chrome控制台中输出。
注:需要安装好 typescript 环境,执行类似命令:
tsc --sourcemap greeter.ts
将输出以下内容:


上一篇:
Yii资源(Asset)
下一篇:
Yii扩展