Yii2 资产包包括 html 个文件
Yii2 Asset bundle include html files
这是一个非常小众的案例,但我正尝试在 Yii2 的测试中使用 Google 的新 Polymer Web 组件框架。这些组件与 bower 一起安装(如果可能,我也想以这种方式维护它们),因此在 @vendor 下的网络可访问区域之外。
我原本以为我可以创建一个AssetBundle 来从vendor/bower/ 中提取资源,但看起来AssetBundle class 只支持css 和js 文件。这可以通过更改 AssetBundle class 来覆盖吗?这是个好主意吗?
或者我应该将这些文件移动到 Web 可访问的某个地方 space 以避免自己尝试管理它们的麻烦吗?
如有任何帮助,我们将不胜感激。
Yii2 assetManager 会发布指定源目录下的所有文件,不仅css和js。然后,您可以简单地在布局中构建所需的 link 标签,例如:
注册您的资产包:
$polymerAssetBundle = \app\assets\PolymerAssetBundle::register($this);
或者如果你想在头部加载它:
$this->registerAssetBundle(\app\assets\PolymerAssetBundle::className(), \yii\web\View::POS_HEAD);
然后您可以像这样导入您的聚合物组件:
<link rel="import" href="<?= $polymerAssetBundle->baseUrl ?>/path/to/your/component.html">
关于 baseUrl
:
if you specify the sourcePath property, the asset manager will publish the assets and overwrite this property accordingly
阅读更多:http://www.yiiframework.com/doc-2.0/yii-web-assetbundle.html
这是一个非常小众的案例,但我正尝试在 Yii2 的测试中使用 Google 的新 Polymer Web 组件框架。这些组件与 bower 一起安装(如果可能,我也想以这种方式维护它们),因此在 @vendor 下的网络可访问区域之外。
我原本以为我可以创建一个AssetBundle 来从vendor/bower/ 中提取资源,但看起来AssetBundle class 只支持css 和js 文件。这可以通过更改 AssetBundle class 来覆盖吗?这是个好主意吗?
或者我应该将这些文件移动到 Web 可访问的某个地方 space 以避免自己尝试管理它们的麻烦吗?
如有任何帮助,我们将不胜感激。
Yii2 assetManager 会发布指定源目录下的所有文件,不仅css和js。然后,您可以简单地在布局中构建所需的 link 标签,例如:
注册您的资产包:
$polymerAssetBundle = \app\assets\PolymerAssetBundle::register($this);
或者如果你想在头部加载它:
$this->registerAssetBundle(\app\assets\PolymerAssetBundle::className(), \yii\web\View::POS_HEAD);
然后您可以像这样导入您的聚合物组件:
<link rel="import" href="<?= $polymerAssetBundle->baseUrl ?>/path/to/your/component.html">
关于 baseUrl
:
if you specify the sourcePath property, the asset manager will publish the assets and overwrite this property accordingly
阅读更多:http://www.yiiframework.com/doc-2.0/yii-web-assetbundle.html