最近在学习yii,加载CSS,JS等的时候,直接写link标签和使用AppAsset都可以载入资源。那问题来了,到底哪种方式比较好,为啥子?
Yii 的 AppAsset 可以实现静态文件依赖自动加载,多个文件压缩合并。 比如你有个插件依赖jQuery,用 AppAsset 以后系统会自动把插件排在jQuery后加载,并且可以把多个js文件合并成一个并压缩,减少页面加载文件次数。
个人认为是出于保护目录结构的考虑吧
好处很多,它可以将文件进行缓存,缓存的目录是你项目的缓存目录,如果你不想让人知道你的这些文件地址,那使用AppAsset将会很安全,因为别人无法根据你文件的地址去对你网站做一些手脚。
还有就是扩展里面的样式也会进行缓存,如果你直接用vendor/kuozhan/web/css/style.css这样的地址,那你就暴露了一些东西,很危险。相反如果使用appasset 那它只会显示 /assets/ead333c7/yii.js 这样就很有灵性了。这对手猜不透你的想法你就赢了。
Yii 的 AppAsset 可以实现静态文件依赖自动加载,多个文件压缩合并。
比如你有个插件依赖jQuery,用 AppAsset 以后系统会自动把插件排在jQuery后加载,并且可以把多个js文件合并成一个并压缩,减少页面加载文件次数。
个人认为是出于保护目录结构的考虑吧
好处很多,它可以将文件进行缓存,缓存的目录是你项目的缓存目录,如果你不想让人知道你的这些文件地址,那使用AppAsset将会很安全,因为别人无法根据你文件的地址去对你网站做一些手脚。
还有就是扩展里面的样式也会进行缓存,如果你直接用vendor/kuozhan/web/css/style.css这样的地址,那你就暴露了一些东西,很危险。相反如果使用appasset 那它只会显示 /assets/ead333c7/yii.js 这样就很有灵性了。这对手猜不透你的想法你就赢了。