不能覆盖资产/压缩YII2的yii web jqueryasset



我正在尝试在yii2框架中压缩CSS和JS,并且对我来说很好,但是我不能超越资产捆绑包中的yii web jqueryasset。我正在压缩资产组件,但是我想从CDN加载的一个外部jQuery库,因此如何覆盖捆绑包中的jqueryasset。

这是我的压缩文件。

Yii::setAlias('@webroot', __DIR__ . '/../web');
 Yii::setAlias('@web', '/');
return [
    // Adjust command/callback for JavaScript files compressing:
    'jsCompressor' => 'java -jar tool/compiler.jar --js {from} --js_output_file {to}',
    // Adjust command/callback for CSS files compressing:
    'cssCompressor' => 'java -jar tool/yuicompressor.jar --type css {from} -o {to}',
    // The list of asset bundles to compress:
    'bundles' => [
         'frontendassetsmainSrpAsset',
         'frontendassetsmainVdpAsset'
        // 'yiiwebYiiAsset',
        // 'yiiwebJqueryAsset',
    ],
    // Asset bundle for compression output:
    'targets' => [
        'srpDekho' => [
            'class' => 'yiiwebAssetBundle',
            'basePath' => '@webroot',
            'baseUrl' => '/',
            'js' => 'compress/srp-compressed.js',
            'css' => 'compress/srp-compressed.css',
            'depends' => [
                'frontendassetsmainSrpAsset'
            ],
        ],
        'vdpDekho' => [
            'class' => 'yiiwebAssetBundle',
            'basePath' => '@webroot',
            'baseUrl' => '/',
            'js' => 'compress/vdp-compressed.js',
            'css' => 'compress/vdp-compressed.css',
            'depends' => [
                'frontendassetsmainVdpAsset'
            ],
        ],
    ],
    // Asset manager configuration:
    'assetManager' => [
        'basePath' => __DIR__,
        'baseUrl' => '',
        'bundles' => [
            'yiiwebJqueryAsset' => [
               'sourcePath' => null,
               'basePath' => null,
               'js' => ['//cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js']
            ]
        ]
    ],
];

及以下命令正在压缩资产。

./yii asset frontend/web/config.php common/config/assets_compressed.php

一切正常,所有JS和CSS都是压缩的,但不是外部库。因此,我如何在资产捆绑中覆盖它。

//cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js

我没有问题。

我的压缩配置文件的一部分:

    // Asset manager configuration:
'assetManager' => [
    'basePath' => '@webroot/assets',
    'baseUrl' => '@web/assets',
    'bundles' => [
        DateTimePickerAsset::class => [
            'js' => ['js/bootstrap-datetimepicker.js', 'js/locales/bootstrap-datetimepicker.ru.js']
        ],
        'yiiwebJqueryAsset' => [
            'sourcePath' => null,   // не опубликовывать комплект
            'js' => [
                '//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js',
            ]
        ],
    ]
],

调试信息的来源和捆绑包

您可以在此处显示更多信息https://www.yiiframework.com/doc/guide/2.0/en/structure-asseture-assets#customizing-asset-bundles

您可以在项目

中下载该链接

最新更新