我在 Chrome 中设置 HTML 5 日期输入的样式时遇到了一些困难。
使用诸如 的标记
<input type="date" max="2020-06-03" value="2020-06-01">,在 CSS 中使用一些背景和字体颜色样式,在 Chrome 中呈现为:
我想将右侧的日历图标设为白色,以便与文本的颜色相匹配。
::-webkit-calendar-picker-indicator看起来像是一个可能的候选人。在此设置背景颜色会更改图标后面的颜色(如预期)。但是我找不到任何对图标颜色本身有影响的参数。
在我的 React 应用程序中,我使用“react-keycloak/web”库中的 keycloak 和 KeycloakProvider。
某些路由使用 PrivateRoute 组件进行保护,该组件使用钩子提取 keycloak 状态useKeycloak()并检查用户是否已获得授权并具有正确的角色:
const [keycloak, initialized] = useKeycloak();
Run Code Online (Sandbox Code Playgroud)
我的问题是测试我的 PrivateRoute 组件。无论我尝试什么,初始化始终保持错误,阻止页面渲染。
使用 useKeycloak.test.js 文件作为灵感,我制作了一个 MockAuthProvider 组件来包装我的测试:
import React from "react";
import { KeycloakProvider } from "@react-keycloak/web";
export const createKeycloakStub = () => ({
init: jest.fn().mockResolvedValue(true),
updateToken: jest.fn(),
login: jest.fn(),
logout: jest.fn(),
register: jest.fn(),
accountManagement: jest.fn(),
createLoginUrl: jest.fn(),
...
});
interface MockedAuthProviderProps {
children: React.ReactChild;
mocks: { [key: string]: typeof jest.fn };
}
export const MockedAuthProvider = (props: MockedAuthProviderProps) => { …Run Code Online (Sandbox Code Playgroud)