当前位置: 首页 > news >正文

搬家公司网站模板百度百度一下

搬家公司网站模板,百度百度一下,合肥市蜀山区做个网站多少钱,浙江省政府 加强政府网站建设storybook回顾继续说说用法配置文件介绍回顾 上篇博客地址: https://blog.csdn.net/tuzi007a/article/details/129192502说了部分用法。 继续说说用法 配置文件介绍 开发环境的配置都在.storybook目录中,里面包含了2个文件 main.js preview.js先看m…

storybook

  • 回顾
  • 继续说说用法
    • 配置文件介绍


回顾

上篇博客地址:

https://blog.csdn.net/tuzi007a/article/details/129192502

说了部分用法。


继续说说用法

配置文件介绍

开发环境的配置都在.storybook目录中,里面包含了2个文件

main.js
preview.js

先看main.js文件。

该文件是在安装了storybook后自动生成的,里面本身就包含了支持当前框架在开发环境的配置,

我们所要做的是在配置上进行补充,比如支持less sass scss等,增加addon插件,修改

stories加载目录,修改打包工具版本和对应功能等。

module.exports = {stories: [ // 生成可视化UI控件文档时,会加载哪些文件// stories目录下的所有.stories.mdx文件"../stories/**/*.stories.mdx",// stories目录下的所有.stories.js .jsx .ts .tsx文件"../stories/**/*.stories.@(js|jsx|ts|tsx)"],addons: [// 用于配置storybook的插件// 在安装storybook后,这里会自动加载一些常用插件],babel: async (options) => {// ...options// babel的配置我们一般在根目录下的`.babelrc.js`中处理}, // 你使用的框架对应的storybook版本// 比如react框架对应的storybook版本是"@storybook/react"framework: "xxx", // 核心打包工具配置// 比如使用storybook的哪个版本,用webpack5的哪个版本打包,是否懒加载,是否要缓存等core: {builder: {name: 'webpack5',options: {lazyCompilation: true,fsCache: true}},},webpackFinal: async (config, { configType }) => {// 这里写入webpack的补充配置// 不要试图去修改入口和出口// config是一个配置对象,要配置哪个参数,就从config中调用配置项,然后进行追加,// 比如config.module.rules.push({...})用来增加loader的配置// config.devtool = “xxx-source-map”用来增加source-map的配置// config.plugins.push(xxx)用来增加webpack plugin的配置// 最后要返回配置内容 固定写法return config;}
}

再来看看preview.js文件

它主要用于控制story的渲染,在渲染story时提供一些数据上的配置。

它有3个配置项,

  • decorators
  • parameters
  • globalTypes

下面进行一一介绍。

decorators

它是一个数组,负责为story提供渲染数据,可以对单个story使用,也可以对某个组件使用,

还可以放在全局配置里,因此它有如下多种写法,

第一种:对单个story使用

// Button.stories.jsximport React from 'react';
import { Button } from './Button';export default {title: "Example/Button",component: Buttonconst Template = (args) => <Button {...args} />;
export const Primary = Template.bind({});
Primary.decorators = [(Story) => (<div style={{ margin: '3em' }}><Story /></div>),
];

配置结果:
当前如果选择查看Primary这个story的话,会增加3emmargin
在这里插入图片描述
而选择查看其他story的时候则不会:
在这里插入图片描述

第二种,对以Button组件为模板的story使用

// Button.stories.jsximport React from 'react';
import { Button } from './Button';export default {title: 'Button',component: Button,decorators: [(Story) => (<div style={{ margin: '3em' }}><Story /></div>),],
};

配置后,可以看到所有以Button为模板的story,它们的margin都增加了3em:
在这里插入图片描述
在这里插入图片描述
而以其他组件为模板的story则不会:
在这里插入图片描述

第三种,对全局的story和组件使用,这需要在.storybook/preview.js中配置:

// .storybook/preview.jsimport React from 'react';export const decorators = [(Story) => (<div style={{ margin: '3em' }}><Story /></div>),
];

然后就可以看到,所有的story都增加了3em的margin:
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述


parameters

它是一个对象,是用来控制如下内容的:
在这里插入图片描述
比如背景色选项,事件,控制器显示等。

先来看下安装storybook后自动生成的.storybook/preview.js下关于parameters全局配置文件:

export const parameters = {// 配置事件显示,如果组件中的props参数是on+大写字母,就当作事件处理,比如onClickactions: { argTypesRegex: "^on[A-Z].*" },// 控制器controls: {matchers: {// 如果props参数里有background或者color,就把控制器显示成选色器的样子color: /(background|color)$/i,// 如果props参数是Date,就把该参数对应的控制器显示成时间选择器的样式date: /Date$/,},},
}

parameters同样有三种配置方式,分别对单个story生效、对以某个组件为模板的story生效

和全局生效。下面就以backgrounds配置项为例来说说。就是这里:

在这里插入图片描述

该配置项用来控制可视化UI文档的背景主题色,默认有两种,lightdark,默认选择是light

也就是图中显示的白色,选择dark,就会显示成黑色:
在这里插入图片描述
现在要重新设置选择项,让主题色有红色,绿色和蓝色的选择项。

第一种方式:对单个story配置:

// Button.stories.jsximport { Button } from './Button';export default {title: 'Button',component: Button,
};const Template = (args) => <Button {...args} />;export const Primary = Template.bind({});
Primary.args = {primary: true,label: 'Button',
};
Primary.parameters = {backgrounds: {values: [{ name: 'red', value: '#f00' },{ name: 'green', value: '#0f0' },{ name: 'blue', value: '#00f' },],},
};

此时选择查看Primary这个story,就可以选择背景色了:

点击这里选择背景色:
在这里插入图片描述
可以看到可分别选择红黄蓝三种颜色,而其他story下,就不具备这个选择。

第二种方式,对以某个组件为模板的story生效:

import React from 'react';
import { Button } from '../src';export default {title: 'Example/Button',component: Button,argTypes: {backgroundColor: { control: 'color' },},parameters: {backgrounds: {values: [{ name: 'red', value: '#f00' },{ name: 'green', value: '#0f0' },{ name: 'blue', value: '#00f' },],},}
};

第三种方式,就是在preview.js中配置全局主题背景色

// .storybook/preview.jsexport const parameters = {backgrounds: {values: [{ name: 'red', value: '#f00' },{ name: 'green', value: '#0f0' },],},
};

globalTypes

这个是全局生效的配置,可以设置主题色,工具条等。

可参考文档:

https://storybook.js.org/docs/react/essentials/toolbars-and-globals

全局配置示例:

// .storybook/preview.jsexport const globalTypes = {theme: { // 主题name: 'Theme',description: 'Global theme for components',defaultValue: 'light',toolbar: {icon: 'circlehollow',// Array of plain string values or MenuItem shape (see below)items: ['light', 'dark'],// Property that specifies if the name of the item will be displayedshowName: true,// Change title based on selected valuedynamicTitle: true,},},
};

http://www.hkea.cn/news/155055/

相关文章:

  • 玉溪做网站的公司夸克搜索网页版
  • wordpress导航主题haowseo挂机赚钱
  • 广州做家教的网站深圳网络推广招聘
  • 锐捷网络公司排名seo技术介绍
  • 新圩做网站公司拼多多代运营一般多少钱
  • 免费网站可以做cpa?短视频营销的优势
  • b2b外贸营销型网站如何做电商赚钱
  • 建设无障碍网站seo分析报告怎么写
  • 电子商务网站开发进什么科目模板自助建站
  • 威海市住房和城乡建设局官方网站北京seo营销公司
  • 开网页卡优化关键词排名工具
  • wordpress右侧文章归档东莞公司seo优化
  • 个人网站建设需求说明书免费外链生成器
  • 湖南网站建设的公司排名网页制作网站制作
  • 公司网页网站建设 ppt模板app开发公司排行榜
  • 网站开发yuanmus联合早报 即时消息
  • 为什么只有中国人怕疫情seo 页面
  • 网站开发总结报告十大门户网站
  • 临淄信息港发布信息临沂seo建站
  • 门户网站系统介绍企业推广哪个平台好
  • 免费网站建站排行榜网站策划报告
  • 网站设计的评估最近发生的热点新闻
  • 设建网站广告投放渠道
  • 日ip5000的网站怎么做如何提高网站在搜索引擎中的排名
  • 网站描文本链接怎么做深圳互联网营销
  • 一个服务器做两个网站自己做网站
  • 百草味网站建设的活动方案营销型企业网站有哪些
  • 论文课程网站 建设背景项目推广方式有哪些
  • 内部网站建设关键词优化推广策略
  • 一个公司可以做几个网站备案贵阳网络推广排名