在不同的文件夹

时间:2017-04-18 18:42:36

标签: css polymer polymer-1.0

我需要与所有Polymer组件共享相同的CSS。根据我的搜索结果,不推荐使用样式表直接放置链接, core-style 也是如此。

所以我尝试使用我认为称为样式模块的东西。在一个名为shared-styles.html的单独文件中,我插入了我想要的CSS,然后通过<style is="custom-style" include="shared-styles"></style>导入它。

当共享样式与我的元素/组件位于同一文件夹中时,这是有效的,但是在所有文件夹中一次又一次地复制和粘贴CSS是不太实际的,所以我想保留样式它自己的文件夹。但是,当我这样做时,样式就会消失。

导入路径对我来说似乎是正确的,但无论哪种方式我都试图改变它并且没有任何反应。

我尝试过很多其他的事情,例如在链接标记中添加或删除“async”,在样式标记中添加或删除is = custom-style,但到目前为止没有任何更改。

我有一个想法,也许问题是我如何测试我的组件,因为聚合物服务器--open 只获取组件文件夹中的文件。

Here's a pen, but you can't really see the problem there, since I can't put the CSS in a different folder.

任何指导都将深表感谢。

控制台错误:

127.0.0.1/:1 GET http://127.0.0.1:8081/shared-styles/shared-styles.html 404 (Not Found)
polymer.html:2654 Could not find style data in module named shared-styles

2 个答案:

答案 0 :(得分:0)

似乎您没有为dom-module定义shared-styles ID。

正确的shared-styles/shared-styles.html文件应为:

<dom-module id="shared-styles">
   <template>
       <style>
          /** your CSS goes here **/
       </style>
   </template>
</dom-module>

答案 1 :(得分:0)

对,伙计们,抱歉,如果我的问题令人困惑。

问题确实与聚合物服务器--open 只获取组件文件夹中的文件有关,因此忽略了不同文件夹中的样式。

我修复的方式是通过创建快捷方式到组件文件夹内的外部文件夹,然后通常只插入这样的样式:

<link rel="import" href="shared-styles/shared-styles.html">

希望它有所帮助!