Javascript 聚合物`<;自定义样式>;`:哪行代码停止向DOM追加同一自定义样式模板模块的多个导入?
我的项目的上游web组件主题作为Javascript 聚合物`<;自定义样式>;`:哪行代码停止向DOM追加同一自定义样式模板模块的多个导入?,javascript,polymer,vaadin,web-component,es6-modules,Javascript,Polymer,Vaadin,Web Component,Es6 Modules,我的项目的上游web组件主题作为元素实现 我想将我的文档级覆盖实现为一个JS模块(如中所示,避免硬编码到appindex.html或等效程序中),表面上看起来很简单: import'@vaadin/vaadin-lumo-styles/color.js'; const$template=document.createElement('template'); $template.innerHTML=` html, :主持人{ --lumo原色:红色; } `; document.head.appe
元素实现
我想将我的文档级覆盖实现为一个JS模块(如中所示,避免硬编码到appindex.html
或等效程序中),表面上看起来很简单:
import'@vaadin/vaadin-lumo-styles/color.js';
const$template=document.createElement('template');
$template.innerHTML=`
html,
:主持人{
--lumo原色:红色;
}
`;
document.head.appendChild($template.content);
问题
文档中使用的一些web组件还通过import'@vaadin/vaadin lumo styles/color.js'
导入原始主题
我希望我的覆盖总是层叠在最后(没有!重要的攻击)
稍后执行多个导入'@vaadin/vaadin-lumo-styles/color.js'代码>调用是否有可能还原我的CSS自定义属性覆盖
思考:
- 原色:lumo原色:hsl(214,90,52%)代码>
- me:导入原稿,覆盖
——lumo原色:红色代码>
- 稍后:是否可以稍后导入原始“重置”级联回
——lumo原色:hsl(214,90%,52%)代码>)
似乎暗示可能不是,但我正在努力寻找任何以某种方式明确说明
的文档
也许是关键
故障
似乎证实了重复进口似乎不会造成问题,但为什么?这纯粹是由于ES6模块负载缓存,还是有其他原因
编辑浏览器检查器中的拖放元素肯定会对级联产生影响(颜色根据标记顺序而变化),因此至少确认加载顺序很重要。提示:删除所有元素以进行编辑
通过#id
=>
的差异标记(属于
)
保存
以编辑=>保存(#id)
红色(在“--lumo primary color
”中)是一个变量=>var color=red
删除
=>删除所有(#id)
的所有内容
添加所需的新内容=>如上所述
我只希望你能解决你的问题。你比我强,所以我不会写代码。AFAIK导入只被解析/执行一次,因此你正确地假设color.js的后续导入没有问题