Sun*_*arg 8 javascript reactjs storybook primereact
我有一个在内部使用 Primereact 对话框的对话框组件。当我为此制作故事书时,按钮的自定义 css 会被导入,就像导入到dialog.jsx 中一样。但是 Primereact 对话框的默认 css 没有加载并反映在故事书中。尽管它正在我的 React 应用程序中加载。
对话框Comp.jsx
import { Dialog } from "primereact/dialog";
const DialogComp = (props) => {
return (
<Dialog
className="dialog-modal"
header={props.header}
visible={true}
>
{props.children}
</Dialog>
);
};
export default DialogModal;
Run Code Online (Sandbox Code Playgroud)
对话.storybook.js
import React from "react";
import DialogModal from "./dialogComp";
import { addDecorator, addParameters } from "@storybook/react";
import { Store, withState } from "@sambego/storybook-state";
import { store } from "./../../utils/storyStore";
const DialogModalComp = (props) => {
return [
<div>
<DialogModal
header="Dialog Modal"
displayModal={true}
>
Modal content
</DialogModal>
</div>,
];
};
addDecorator(withState());
addParameters({
state: {
store,
},
});
export default {
title: "dialog",
};
export const DialogModalComponent = () => DialogModalComp;
Run Code Online (Sandbox Code Playgroud)
故事书---main.js
module.exports = {
"stories": [
"../src/**/*.stories.mdx",
"../src/**/*.stories.@(js|jsx|ts|tsx)"
],
"addons": [
"@storybook/addon-links",
"@storybook/addon-essentials",
"@storybook/preset-create-react-app"
]
}
Run Code Online (Sandbox Code Playgroud)
我在配置中遗漏了什么吗?
您需要导入App.jsStorybook 中全局使用的任何样式,方法是导入它们.storybook/preview.js(如果文件尚不存在,则创建该文件)。
React 中的每个组件都是自包含的 - 你的DialogModal组件不会被设置样式,因为在 Storybook 中它不会在你的App组件中渲染(你在其中导入样式)。
要在使用 Storybook 时模拟您的应用程序,您可以在文件中导入 css preview.js。
文件:
\n\n\n要控制故事的渲染方式并添加全局装饰器和\n参数,请创建一个 .storybook/preview.js 文件。它被加载到\nCanvas 选项卡、\xe2\x80\x9cpreview\xe2\x80\x9d iframe 中,该 iframe 在隔离中呈现组件。将 Preview.js 用于适用于所有故事的全局代码(例如CSS 导入或\nJavaScript 模拟)。
\n
在.storybook/preview.js中导入您的样式
import "../src/index.css";
export const parameters = {
actions: { argTypesRegex: "^on[A-Z].*" },
controls: {
matchers: {
color: /(background|color)$/i,
date: /Date$/,
},
},
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10225 次 |
| 最近记录: |