YII2在bootstrap.js之前调用jquery-ui代码

时间:2015-10-14 01:38:39

标签: yii2 assets

这是我的资产代码..

public $js = [
    'js/jquery-ui.min.js',
    'js/app.min.js',

];

我在视图文件中使用了一些小部件......这里是js文件的顺序。我想要的是在bootstrap.js之前调用jquery-ui.js ..怎么做?

enter image description here

1 个答案:

答案 0 :(得分:3)

在Bootstrap之后放置jQuery UI没有任何意义,因为它们根本不依赖于彼此。但是为了将bundle包含在另一个之前,你应该为相关的bundle添加依赖。

对于自定义资产包,您可以写下:

ld: warning: -arch not specified
ld: warning: -macosx_version_min not specified, assuming 10.6
ld: warning: ignoring file eatsyscall.o, file was built for unsupported file format ( 0x7F 0x45 0x4C 0x46 0x01 0x01 0x01 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ) which is not the architecture being linked (x86_64): eatsyscall.o
Undefined symbols for architecture x86_64:
  "start", referenced from:
     implicit entry/start for main executable
ld: symbol(s) not found for inferred architecture x86_64

但是因为Bootstrap是内置资产,所以你不能这样修改它。相反,您可以通过Asset Manager的配置全局设置它:

$depends = [
    // Write classes of dependent asset bundles here, for example:
    'yii\jui\JuiAsset',
];

或者只是在渲染视图之前在一个特定位置设置依赖关系:

return [
    // ...
    'components' => [
        'assetManager' => [
            'bundles' => [
                'yii\bootstrap\BootstrapAsset' => [
                    'depends' => [                  
                        'yii\jui\JuiAsset',
                    ];
                ],
            ],
        ],
    ],
];

官方文档: