今天終於把困擾我很久的報錯解決掉了。
首先找到 vendoryiisoftyii2webJqueryAsset.php檔案
<?php
namespace yiiweb;
class JqueryAsset extends AssetBundle
{
public $sourcePath = `@bower/jquery/dist`;
/* public $js = [
`jquery.js`,
];*/
}
把這段註釋掉,其實不註釋也不要緊啦~只不過頁面上會多載入一次jquery.js,下面才是重要的
最重要的來了
在同級目錄下 也就是 vendoryiisoftyii2webYiiAsset.php
class YiiAsset extends AssetBundle
{
public $sourcePath = `@yii/assets`;
public $js = [
`yii.js`,
];
public $depends = [
** `yiiwebJqueryAsset`,**
];
}
可以看到這有個依賴 ,這個依賴的就是 剛剛上面的JqueryAsset的名稱空間~現在只要把這個名稱空間改掉就好了,只要改這一個地方就好了,因為yii.activeForm.js應該是依賴的yii.js的名稱空間 ~ 雖然我全域性也沒搜到yii.activeForm.js在哪裡出現過,反正不要管他就行了,接下來把它
public $depends = [
`appassetsAppAsset`,
];
改成這樣就行了 依賴在 web同級目錄下的 assets/AppAsset.php中
<?php
namespace appassets;
use yiiwebAssetBundle;
class AppAsset extends AssetBundle
{
public $basePath = `@webroot`;
public $baseUrl = `@web`;
public $css = [
`css/bootstrap.min.css`,
`css/iconfont.css`,
`css/bootsnav.css`,
`css/style.css`,
];
public $js = [
`js/vendor/jquery-1.11.2.min.js`,
`js/vendor/bootstrap.min.js`,
`js/comm.js?v1`,
];
public static function addScript($view, $jsfile)
{
$view->registerJsFile($jsfile, [AppAsset::className(), `depends` => `appassetsAppAsset`]);
}
//定義按需載入css方法,注意載入順序在最後
public static function addCss($view, $cssfile)
{
$view->registerCssFile($cssfile, [AppAsset::className(), `depends` => `appassetsAppAsset`]);
}
}
?>
這是我的appasset.php就是這樣的了~現在開啟頁面就不會再看見討厭的jQuery(…).activeform is not a function 了