两者都是vue-cli3.0的放置静态资源的目录。
public放不会改动的文件,这里面的内容可以使引用的,不是由自己编写的内容。基本不会改动的内容(参考vue-cli2.x中的static)
public/ 目录下的文件并不会被Webpack处理,它们会直接被复制到最终的打包目录(默认是dist/static)下,所以必须使用绝对路径引用这些文件。当然这个取决于你vue.config.js中publicPath的配置,默认的是/,(你可以自己去vue.config.js 中修改你的publicPath配置,建议不要修改。)
assets放可能会变动的文件(自己写的js文件等等可能需要改动的文件)
assets目录中的文件会被webpack处理解析为模块依赖,只支持相对路径形式。