Javascript 使用Vue cli,是否可以将CSS构建到`dist/Vue-COMPONENT_NAME.js`文件中?
TLDR:有没有人知道一种优雅的方法来确保组件将其自己的Javascript 使用Vue cli,是否可以将CSS构建到`dist/Vue-COMPONENT_NAME.js`文件中?,javascript,css,vue.js,vuejs2,vue-cli,Javascript,Css,Vue.js,Vuejs2,Vue Cli,TLDR:有没有人知道一种优雅的方法来确保组件将其自己的{…在./dist/vue-component_NAME.css}元素中的所有内容注入页面,但只注入一次?SSR也很友好吗 我已经在寻找一个很好的解决方案超过2天了;我正在构建一个Vue组件,该组件可能会被大多数未构建的客户端环境使用,包括在页面的“通过脚本”标记中: 通常,您只需使用链接标记即可在其中获取样式: ..但我想删除向页面添加额外(可能已忘记)链接标记的要求。我希望这个组件能够自动将其所需的样式注入到页面中,因此它永远不会以
{…在./dist/vue-component_NAME.css}
元素中的所有内容注入页面,但只注入一次?SSR也很友好吗
我已经在寻找一个很好的解决方案超过2天了;我正在构建一个Vue组件,该组件可能会被大多数未构建的客户端环境使用,包括在页面的“通过脚本”标记中:
通常,您只需使用链接标记即可在其中获取样式:
..但我想删除向页面添加额外(可能已忘记)链接标记的要求。我希望这个组件能够自动将其所需的样式注入到页面中,因此它永远不会以未设置样式的状态显示
这是一个以图形为中心的组件,使用画布进行显示,它的一些内部逻辑是在分析顶级DOM节点的clientBoundingRect
的基础上构建的,因此在装载时设置其大小和比例的样式是必不可少的
我还计划自己通过Nuxt使用这个组件,因此我必须确保无论我采用什么解决方案,都能避免可怕的“客户端呈现的虚拟DOM树与服务器呈现的内容不匹配。”
错误消息
到目前为止,我一直很喜欢使用vue cli构建的低配置:
vue build vue-COMPONENT\u NAME.vue--prod--lib VueCOMPONENT
…但其输出始终是两个文件:
/dist/vue-COMPONENT\u NAME.js
./dist/vue-COMPONENT_NAME.css
是否有vue cli
的参数或配置参数会导致它将样式构建到/dist/vue-COMPONENT_-NAME.js
?有人用vue cli
做过类似的事情吗?您是否尝试过将所有CSS导入App.vue
的
而不是在组件中进行导入?我个人仍然将所有css保存在组件文件夹中,但我将它们全部导入App.vue
文件,而不是组件的vue文件。