没有命名空间的类 yii yii\base yii\behaviors yii\caching yii\captcha yii\console yii\console\controllers yii\console\widgets yii\data yii\db yii\db\conditions yii\db\cubrid yii\db\cubrid\conditions yii\db\mssql yii\db\mssql\conditions yii\db\mysql yii\db\oci yii\db\oci\conditions yii\db\pgsql yii\db\sqlite yii\db\sqlite\conditions yii\di yii\filters yii\filters\auth yii\grid yii\helpers yii\i18n yii\log yii\mail yii\mutex yii\rbac yii\rest yii\test yii\validators yii\web yii\widgets

Class yii\web\AssetConverter

继承yii\web\AssetConverter » yii\base\Component » yii\base\BaseObject
实现yii\base\Configurable, yii\web\AssetConverterInterface
可用版本自2.0
源码 https://github.com/yiichina/yii2/blob/api/framework/web/AssetConverter.php

AssetConverter 支持将一些流行的脚本格式编译成 JS 或者 CSS 脚本。

它被 yii\web\AssetManager 用于编译被发布的文件。

公共属性

隐藏继承的属性

属性类型描述被定义在
$behaviors yii\base\Behavior[] List of behaviors attached to this component yii\base\Component
$commands array 用于执行资源编译的命令列表。 键是资源文件的扩展名, 值是相应的目标脚本(“css” 或者 “js”)和用来编译的命令。 你也可以用 路径别名 来指定命令的位置: `php [ 'styl' => ['css', '@app/node_modules/bin/stylus < {from} > {to}'], ] ` yii\web\AssetConverter
$forceConvert boolean 是否应编译源资源文件,即使其结果已存在。 你可能需要设置此属性为 true ,在开发阶段确保编译资源一直是最新的。 不要再生产服务器设置此值为 true, 它会显着降低性能。 yii\web\AssetConverter

公共方法

隐藏继承的方法

方法描述被定义在
__call() Calls the named method which is not a class method. yii\base\Component
__clone() This method is called after the object is created by cloning an existing one. yii\base\Component
__construct() Constructor. yii\base\BaseObject
__get() Returns the value of a component property. yii\base\Component
__isset() Checks if a property is set, i.e. defined and not null. yii\base\Component
__set() Sets the value of a component property. yii\base\Component
__unset() Sets a component property to be null. yii\base\Component
attachBehavior() Attaches a behavior to this component. yii\base\Component
attachBehaviors() Attaches a list of behaviors to the component. yii\base\Component
behaviors() Returns a list of behaviors that this component should behave as. yii\base\Component
canGetProperty() Returns a value indicating whether a property can be read. yii\base\Component
canSetProperty() Returns a value indicating whether a property can be set. yii\base\Component
className() Returns the fully qualified name of this class. yii\base\BaseObject
convert() 将所给的资源文件编译成 JS 或者 CSS 文件。 yii\web\AssetConverter
detachBehavior() Detaches a behavior from the component. yii\base\Component
detachBehaviors() Detaches all behaviors from the component. yii\base\Component
ensureBehaviors() Makes sure that the behaviors declared in behaviors() are attached to this component. yii\base\Component
getBehavior() Returns the named behavior object. yii\base\Component
getBehaviors() Returns all behaviors attached to this component. yii\base\Component
hasEventHandlers() Returns a value indicating whether there is any handler attached to the named event. yii\base\Component
hasMethod() Returns a value indicating whether a method is defined. yii\base\Component
hasProperty() Returns a value indicating whether a property is defined for this component. yii\base\Component
init() Initializes the object. yii\base\BaseObject
off() Detaches an existing event handler from this component. yii\base\Component
on() Attaches an event handler to an event. yii\base\Component
trigger() Triggers an event. yii\base\Component

受保护的方法

隐藏继承的方法

方法描述被定义在
runCommand() 执行命令来编译资源文件。 yii\web\AssetConverter

属性详情

$commands 公共 属性

用于执行资源编译的命令列表。 键是资源文件的扩展名, 值是相应的目标脚本(“css” 或者 “js”)和用来编译的命令。

你也可以用 路径别名 来指定命令的位置:

[
    'styl' => ['css', '@app/node_modules/bin/stylus < {from} > {to}'],
]
public array $commands = ['less' => ['css''lessc {from} {to} --no-color --source-map'], 'scss' => ['css''sass {from} {to} --sourcemap'], 'sass' => ['css''sass {from} {to} --sourcemap'], 'styl' => ['css''stylus < {from} > {to}'], 'coffee' => ['js''coffee -p {from} > {to}'], 'ts' => ['js''tsc --out {to} {from}']]
$forceConvert 公共 属性

是否应编译源资源文件,即使其结果已存在。 你可能需要设置此属性为 true ,在开发阶段确保编译资源一直是最新的。 不要再生产服务器设置此值为 true, 它会显着降低性能。

public boolean $forceConvert false

方法详情

convert() 公共 方法

将所给的资源文件编译成 JS 或者 CSS 文件。

public string convert($asset, $basePath)
$asset string

资源文件路径,相对于 $basePath。

$basePath string

资源 $asset 相对于的目录。

return string

编译成的资源文件路径,相对于 $basePath。

runCommand() 受保护 方法

执行命令来编译资源文件。

protected boolean runCommand($command, $basePath, $asset, $result)
$command string

执行的命令。如果以 @ 前缀,则当作 路径别名

$basePath string

资源基路径和命令的工作目录

$asset string

资源文件名

$result string

编译命令将生成的文件名

return boolean

成功时为 true,失败为 false。失败时会记日志。

throws yii\base\Exception

当命令失败和 YII_DEBUG 为 true 时抛出。 而生产模式下记录错误日志。