我需要將jstree(版本3.3.4)作爲jowerter項目(jhipster版本2.20.0 - 不是當前版本!)的bower依賴項添加。部署jhipster應用程序時缺少jstree圖標
使用dev配置文件或從我的IDE啓動應用程序時,一切正常。 但是,當我使用生產配置文件進行部署時,打包.war文件時,項目的.css文件會合併到一個名爲assets/styles/something.vendor.css
的大文件中,而圖像似乎被複制到assets/images/
。 Web瀏覽器結束了詢問assets/styles/32px.png
,導致404 而是在使用dev的外形,風格和圖片都來自bower_components/jstree/dist/themes/default/
加載,但jstree似乎期望它直接referncing他們的圖標旁邊的CSS文件(例如background: url(32px.png)
)。
我的嘗試:
我設法通過添加例如
.jstree-default .jstree-file {
background: url(../images/32px.png) -100px -68px no-repeat !important
}
到項目主css文件(src/main/webapp/assets/styles/main.css
)和手動添加圖像assets/images
覆蓋的一些規則。
但jstree似乎將大多數圖標打包成一個.png文件 - 然後根據使用css規則需要哪個圖標來移動/剪切它。這使得很難讓它看起來很正確。
用我的方式圖標可以加載 - 但他們應該對一些(未知),因此,它們不切:
於是,我就重寫屬性像repeat: no-repeat
或background-color: transparent
以及(根據我的理解,它們應該已經存在,因爲它們是jstree的css的一部分,並且不會被我的規則覆蓋),但規則似乎太複雜,我無法讓它看起來正確,我希望有更好的解決方案。
如何解決這個問題,而不必'重寫'/覆蓋大部分jstree的css規則?
瞭解JHipster prod構建過程並通過配置或b從其中排除jstree y手動將jstree移動到另一個文件夾中(不使用bower)。 –