Dar*_*ryn 8 web-component bootstrap-4 lit-element
我想将 Lit-Element 与 Bootstrap 结合使用。
目前,我只是按照此处的建议导入了外部依赖项: https: //lit-element.polymer-project.org/guide/styles#external-stylesheet
有没有更好的方法来导入这些第三方依赖项?
这是我的组件:
import { LitElement, html, css } from "../../../third-party-libs/lit-element.js"
class LoginError extends LitElement {
static get properties() {
return {
show: { type: Boolean, reflect: true }
}
}
static get styles() {
return css`
div {
color: red;
}
.hide-me {
visibility: hidden
}
`;
}
constructor() {
super();
this.show = false
}
render(){
return html`
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/css/bootstrap.min.css" integrity="sha384-GJzZqFGwb1QTTN6wy59ffF1BuGJpLSa9DkKMp0DgiMDm4iYMj70gZWKYbI706tWS" crossorigin="anonymous">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/animate.css/3.7.0/animate.min.css">
<!-- jQuery first, then Popper.js, then Bootstrap JS -->
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.6/umd/popper.min.js" integrity="sha384-wHAiFfRlMFy6i5SRaxvfOCifBUQy1xHdJ/yoi7FRNXMRBu5WHdZYu1hA6ZOblgut" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/js/bootstrap.min.js" integrity="sha384-B0UglyR+jN6CkvvICOB2joaf5I4l3gm9GU6Hc1og6Ls7i6U/mkkaduKaBhlAXv9k" crossorigin="anonymous"></script>
<div class="invalid-credentials mb-3 animated ${ this.show ? "shake" : "hide-me"}">
Invalid credentials, please try again
</div>
`
}
}
customElements.define('login-error', LoginError)
Run Code Online (Sandbox Code Playgroud)
对于如何清理此问题以及如何与多个组件共享此代码的任何建议,我将不胜感激。
小智 10
您可以在 get styles 中执行此操作,此代码提取全局样式并将其附加到 Shadowdom,因此组件会编辑引导程序,并且如果您想要其中的样式,则可以覆盖
static get styles() {
const { cssRules } = document.styleSheets[0]
const globalStyle = css([Object.values(cssRules).map(rule =>
rule.cssText).join('\n')])
return [
globalStyle,
css`
`
];
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7112 次 |
| 最近记录: |