handleHitKnowledgeChange = async (value: any) => {
        const hitKnowledgeTableFilter = this.state.hitKnowledgeTableFilter
        let filterTableData: any[] = []
        if (this.state.hitKnowledgeTableType.includes(value)) {
            hitFilter.type = value
        if (value === 'type') {
            hitFilter.type = 'type'
        if (this.state.hitKnowledgeTableCategorys.includes(value)) {
            hitFilter.Category = value
        if (value === 'Category') {
            hitFilter.Category = 'Category'
        if (this.state.hitKnowledgeTableCatalogs.includes(value)) {
            hitFilter.Catalogs = value
        if (value === 'Catalogs') {
            hitFilter.Catalogs = 'Catalogs'
        if (['直连人工', '非直连人工'].includes(value)) {
            hitFilter.Direct = value
        if (value === 'direct') {
            hitFilter.Direct = 'direct'
        let filterStr = 'item=> item != undefined'
        if (!!hitFilter.type && hitFilter.type !== 'type') {
            filterStr += `&&item.kdType==='${hitFilter.type}'`
        else {
            filterStr += '&&item.kdType!==undefined'
        if (!!hitFilter.Category && hitFilter.Category !== 'Category') {
            filterStr += `&&item.kdCategory==='${hitFilter.Category}'`
        else {
            filterStr += '&&item.kdCategory!==undefined'
        if (!!hitFilter.Catalogs && hitFilter.Catalogs !== 'Catalogs') {
            filterStr += `&&item.kdCatalog==='${hitFilter.Catalogs}'`
        else {
            filterStr += '&&item.kdCatalog!==undefined'
        if (!!hitFilter.Direct && hitFilter.Direct !== 'direct') {
            filterStr += `&&item.kdDirectManual==='${hitFilter.Direct}'`
        else {
            filterStr += '&&item.kdDirectManual!==undefined'
        filterTableData = hitKnowledgeTableFilter.filter(eval(filterStr))
        this.setState({
            hitKnowledgeTable: filterTableData,
                    handleHitKnowledgeChange = async (value: any) => {        const hitKnowledgeTableFilter = this.state.hitKnowledgeTableFilter        let filterTableData: any[] = []        if (this.state.hitKnowledgeTableType.includes(value)) {            hitFi...
之前一年多前接手的一个react项目,前段时间因为做业务中台项目,对公司现有的应用项目做中台化改造,这期间将项目部署到uat环境,测试期间,测试小妹妹和产品大叔都吐槽进入uat项目的时候要load很久,白屏时间超过30s,体验很差,生产不至于这么慢但也是白屏时间挺长的,所以减少白屏时间增加用户体验成为了当务之急。复制代码
通过控制台判断加载资源时间还有资源大小
通过开发者工具可以看到白屏的主要原因在于bundle.js这个打包后的文件过大,达到3.6M加上uat环境带宽等问题的话,光加载这个bundle.js就花了30s+,所以白屏时间太长,用户体验差要解决这个问题就得从这个bu
				
React中antd日期选择框选择时间区间,禁用时间今天为基准,今天以前可选,今天以后可选区间范围可选 今天为基准,今天以前可选,今天以后可选 handleDate= current => { if (!current) { return false } else { return current > moment()//今天以后可选 console.log(this.state.poDatas) var showfilterList = this.state.poDatas.filter(checkeddata) console.log(‘过滤后:’) console.log(showfilterList) this.set
var grades = [ {team: "Team1", name: "Alice", grade: 80}, {team: "Team1", name: "Bruce", grade: 90}, {team: "Team1", name: "Cindy", grade: 在FilterPicker组件中需要完成的步骤: 1.1.3 代码示例 在src/pages/HouseList/components/Filter/index.js中添加如下代码: 首先,提供组件展示或隐藏的状态和筛选条件数据: 然后,在render方法中判断openType的值为area/mode/price 时,就显示FilterPicker组件,以及遮罩层: 然后,在标题点击事件中,修改状态openType为当前type,展示对话框: 我是歌谣 我有个兄弟 巅峰的时候排名c站总榜19 叫前端小歌谣 曾经我花了三年的时间创作了他 现在我要用五年的时间超越他 今天又是接近兄弟的一天人生难免坎坷 大不了从头再来 歌谣的意志是永恒的 放弃很容易 但是坚持一定很酷 在日常的数据处理中 未免要处理数组数据 常规的会进行一个过滤的一个操作 一般用的map会比较多一点 直接外部定义一个变量 然后push进去 最后return