我正在使用Vue.js开发一个渐进式web应用程序。
在我进行开发时,我使用命令npm run dev
来启动为http://localhost:8080/上的文件提供服务的本地服务器。当我想要为生产环境进行构建时,我使用npm run build prod
,它在project\dist
中生成输出文件。然后,我将这些文件复制到ISS上,该ISS被配置为使用单页应用程序。到目前为止一切都很好。
我注意到开发版本和产品版本在应用程序外观(css)上有一些不同。首先,我认为这可能是因为客户端缓存,但在几次尝试清理缓存和无缓存加载后,我确信缓存不是这里的问题。输出确实是不同的。
老实说,除了几个次要的css部分,我不确定是否还有其他不同之处。我在想可能是什么问题,我注意到的一个可能的原因是我在vue中使用了带有作用域css (*.scoped.vue.css
文件名)的单个文件组件。我猜把不同的文件合并成一个文件可能会有问题?
值得一提的是,当谈到npm,webpack和所有其他涉及的技术时,我是一个相当新手。如果您想查看配置,可以找到我当前的工作分支build configurations here。
你知道问题出在哪里吗?
发布于 2018-06-02 05:33:21
我在使用单文件组件时遇到了同样的问题。实际上,问题似乎是,当你运行npm run build
时,它会生成一个单一的css文件,而不能保证样式将以相同的顺序应用,从而导致一些属性值被忽略。我通过将!important
添加到在最终构建中不匹配的属性来“修复”它。也许有更好的方法来处理这件事,但我必须承认我也是个新手。
发布于 2018-11-19 17:46:16
当npm run build
很重要时,样式的应用顺序很重要,据我所知,我们无法控制样式的顺序。为了消除冲突,在使用Vue.js
时,您可能想要scope
您的样式。
在项目中的每个*.vue
文件中,替换
<style>
...
</style>
使用
<style scoped>
...
</style>
https://stackoverflow.com/questions/49748141
复制相似问题