用nuxt搭建网站时,偶尔发现静态资源的放置----assets和static,搞不明白两者有何不同,遂去查阅资料,简记如下:
相同点:
项目中所需要的资源文件图片,字体图标,样式文件等都可以放在这两个文件下,assets和static两个都是存放静态资源文件。
不同点:
assets中存放的静态资源文件在项目打包时,也就是运行npm run build时会将assets中放置的静态资源文件进行打包上传,所谓打包简单点可以理解为压缩体积,代码格式化。而压缩后的静态资源文件最终也都会放置在static文件中跟着index.html一同上传至服务器;
static中放置的静态资源文件就不会要走打包压缩格式化等流程,而是直接进入打包好的目录,直接上传至服务器。因为避免了压缩直接进行上传,在打包时会提高一定的效率,但是static中的资源文件由于没有进行压缩等操作,所以文件的体积也就相对于assets中打包后的文件提交较大点。在服务器中就会占据更大的空间。
建议:
将项目中template需要的样式文件js文件等都可以放置在assets中,走打包这一流程,减少体积。而项目中引入的第三方的资源文件如font-awesome.css等文件可以放置在static中,因为这些引入的第三方文件已经经过处理,我们不再需要处理,直接上传。
简单记录自己问题,同时也希望能帮到大家。
网友评论