- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个可以是不同类型的按钮组件,例如 primary
, secondary
, 等等:
export const buttonTypes = [
'primary',
'secondary',
'tertiary',
'positive',
'negative',
]
const Button = ({ text, type }) => {
return(
<button className={type}>{text}</button>
)
}
Button.propTypes = {
text: PropTypes.string,
type: PropTypes.oneOf(buttonTypes),
}
buttonTypes
添加了另一个字符串。数组它会自动添加到样式指南中:
import ButtonComponent, { buttonTypes } from './Button';
const Button = () => {
return(
<div>
{
buttonTypes.map(type=>(
<ButtonComponent key={type} text={type} type={type} />
))
}
</div>
)
}
export default {
title: 'Components',
component: Button,
};
Button
成为实际的组件,而不是我上面所做的包装器。
import ButtonComponent, { buttonTypes } from './Button';
const Button = () => {
return (
<ButtonComponent
type={select('type', buttonTypes, buttonTypes.primary)}
text="Button"
/>
);
};
buttonTypes
则不会自动更新。 .
最佳答案
使用 grouping旋钮的特性,这样你的组件的每个实例都将获得自己的旋钮实例,而不是所有组件实例之间共享所有的旋钮实例。如果您希望某些内容共享而其他内容不共享,您甚至可以将分组旋钮与非分组旋钮混合使用。
在下面的例子中,我有一个 <Button/>
每个实例都有自己的 type
副本的故事和 disabled
属性,但 text
在他们之间共享。
每个按钮类型都有自己的面板,您可以在其中设置其 type
和 disabled
. “Other”组包含任何没有设置组的旋钮(例如 text
)。
src/Button/Button.component.jsx
import * as React from "react";
import "./Button.style.css";
export const Button = ({
text,
type,
disabled,
onClick
}) => (
<button
className={`button button--${type} ${disabled ? "button--disabled" : ""}`}
disabled={disabled}
onClick={onClick}
children={text}
/>
);
import * as React from "react";
import {withKnobs, text, boolean, select} from "@storybook/addon-knobs";
import {action} from "@storybook/addon-actions";
import {Button, buttonTypes} from "./";
export default {
title: "Button",
component: Button,
decorators: [withKnobs]
};
export const ButtonStory = () => {
const buttontext = text("Text", "Click Me");
return (
<div>
{buttonTypes.map(buttonType => (
<div key={buttonType}>
<Button
type={select("Type", buttonTypes, buttonType, buttonType)}
disabled={boolean("Disabled", false, buttonType)}
onClick={action(`${buttonType} clicked`)}
text={buttontext}
/>
</div>
))}
</div>
);
};
ButtonStory.story = {
name: "All"
}
export const buttonTypes = [
"primary",
"secondary",
"tertiary"
];
.button {
padding: 0.5em;
font-size: 1.25em;
border-radius: 10px;
border-width: 2px;
border-style: solid;
border-color: black;
}
.button--primary {
background-color: rgb(132, 198, 106);
color: black;
border-color: black;
}
.button--secondary {
background-color: rgb(194, 194, 194);
color: black;
border-color: black;
}
.button--tertiary {
background-color: transparent;
color: inherit;
border-color: transparent;
}
.button--disabled {
background-color: rgb(194, 194, 194);
color: rgb(105, 102, 102);
border-color: rgb(105, 102, 102);
}
export {Button} from "./Button.component";
export {buttonTypes} from "./Button.types";
关于reactjs - 在 React Storybook 的单个页面上显示组件的所有变体,但仍然有旋钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61931185/
我正在使用jQuery Knob我想知道是否有任何方法可以将图像而不是文本放入旋钮内,如果没有,是否有任何其他类似于 jQuery Knob 的插件具有此功能? 最佳答案 简单的回答是肯定的。该旋钮将
我正在尝试使用 jQuery Knob在移动网络应用程序中,因此屏幕分辨率为 320x480(您可以使用 http://www.resizemybrowser.com/ 进行测试)。但是,在此分辨率下
我目前正在设计一个应该包含旋钮的GUI。 png文件有点像“动态图片”堆叠(缺少更好的单词)。 假设图像的长度为32,每个旋钮的高度为32:我需要代码 每转下降32。因此,默认情况下,Timage显示
如果有人以前使用过这个插件: https://github.com/aterrien/jQuery-Knob 我正在尝试应用皮肤:“tron” 尝试添加 但没有成功,还在初始化代码中尝试过: $(".
我正在使用优秀的 jQuery knob plugin .但是,我需要根据用户输入动态启用/禁用该元素。支持在页面加载时具有 disabled 状态,其效果是没有鼠标(或触摸)事件绑定(bind)到
我正在尝试向范围 slider 的旋钮添加动画笑脸,但我不确定是否有办法做到这一点。 这是我正在使用的: var emojis = ['😠','😦','😑','😀','😍']; $("inp
我正在尝试删除 jquery 旋钮上显示的 NaN。我尝试了一些方法,例如设置超时和调整倒计时器。如何修复我的旋钮,使其在首次调用时不再显示 NaN? 示例http://codepen.io/miss
我找到了一个使用旋钮/ slider 来控制 map 上的不透明度的 map 示例。我想使用相同的旋钮/ slider ,但用于不同的东西,而不是 map 的一部分。我有代码( http://www.
我们想要使用 jQuery Knob 来选择我们尝试配置的步长为 0.5 的值步骤:.5 但它不起作用。在 jQuery Slider 中,这确实是这样工作的。是否也可以在旋钮中使用它?这个的语法是什
我正在使用 jquery knob使用 .animate 作为百分比计,效果很好,但我想将旋钮的 Canvas 笔触样式的不透明度设置为 alpha 值,如:0% = 0.1, 100% = 1 并具
我有两个问题。首先,您如何更改旋钮的 CSS?我试过向它添加一个类,但这似乎没有用。也没有做内联样式。任何人都知道如何做到这一点(一个例子会很棒)? 其次,有谁知道如何根据窗口大小修改旋钮的大小?我似
已关闭。此问题需要 debugging details 。目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and the
有没有人做过这个? - 我正在创建仪表/旋钮。我试图在这张照片中说明想法 想法:您可以拖动按钮并根据拖动按钮的值更改一些文本和填充颜色。我在谷歌上搜索了可能的方法 - 有多种用于仪表动画的解决方案,例
美好的一天。我正在尝试使用 Anthony Terrien 的 jquery Knob使用 Zurb Foundation,但似乎文本输入已损坏。这是一个屏幕截图: http://i.imgur.co
小米米家智能破壁料理机现已开启预售,这款产品支持破壁熬煮、冷热双打,到手价 379 元。 IT之家了解到,米家智能破壁料理机支持破壁、研磨、碎冰、榨汁、冷热双打。热饮最大容量 1200ml,冷
我是一名优秀的程序员,十分优秀!