任何人都知道如何创建具有多种类型的分层并发症提供程序菜单吗?例如,Google Fit现在具有分层菜单...您可以单击Google Fit并发症提供程序,然后获得3个选项,当您单击某个选项时,还有另一个菜单包含更多选项...
基本上我想要一个这样的菜单:
describe('CheckboxSingle', () => {
const initialState = {
userInputState: {
stepResponses: [
{},
{
type: "questionnaire-checkbox-input",
name: "mockLinkId",
value: false,
prefixText: "mockDesc",
relatedLinkIds: ["mock1", "mock2"]
}
]
}
}
const mockStore = configureStore()
let store, shallowWrapper, dispatch
beforeEach(() => {
store = mockStore(initialState)
dispatch = jest.fn();
shallowWrapper = shallow(<CheckboxSingle store={store} dispatch={dispatch} desc="mockDesc"
linkId="mockLinkId" relatedLinkIds={["mock1", "mock2"]} stepNumber={1} />).dive()
});
// TODO: test action creator firing upon click
test('should call onChange after clicked', () => {
const onChangeFake = jest.spyOn(shallowWrapper.instance(), 'onChange');
shallowWrapper.find('input[type="checkbox"]').simulate('change', { target: { checked: true } });
expect(onChangeFake).toHaveBeenCalledTimes(1);
});
});
等等...
答案 0 :(得分:1)
要实现上面的Date示例,您必须在应用程序中创建三个不同的提供程序。它们都将提供相同的数据,但每个数据仅支持一种特定的并发症数据类型。
我不建议这样做,因为表盘应该负责确定最适合显示的数据类型的优先级。