小编jer*_*u15的帖子

用于匹配 JS import 语句的正则表达式

我正在使用节点来读取文件的内容。我需要匹配一个特定的导入语句,其中文件看起来像这样。

我只需要匹配包含“foo-bar”包的一行或多行。我有兴趣从该包中导入。

import React, { Component } from 'react'
import { withRouter } from 'react-router-dom'
import { connect } from 'react-redux'
import { foo, bar, fooBar } from 'foo-bar'
import { anotherThing } from 'another-module'
Run Code Online (Sandbox Code Playgroud)

它也可以像这样跨越多行。

import React, { Component } from 'react'
import { withRouter } from 'react-router-dom'
import { connect } from 'react-redux'
import { 
    foo, 
    bar, 
    fooBar 
} from 'foo-bar'
import { anotherThing } from 'another-module'
Run Code Online (Sandbox Code Playgroud)

我尝试过使用这个正则表达式,但它匹配从“import”到包含 foo-bar 的行末尾的所有行。我只想将导入匹配到以“foo-bar”结尾的行的末尾。使用 JavaScript 正则表达式可以实现这一点吗?另外,如果除了使用正则表达式之外还有更好的方法,我也愿意接受其他选项

import([\s\S]*?)(?=foo-bar').*
Run Code Online (Sandbox Code Playgroud)

单行示例: https: //regex101.com/r/U1j2G6/1

多行示例: https: …

javascript regex node.js

7
推荐指数
2
解决办法
9253
查看次数

React Virtualized-嵌套的WindowScroller /列表

我正在尝试使用react-virtualized渲染具有1000多行数据的表。这些行非常重,包含多个复杂的React组件。输入,组合框,日期选择器和弹出菜单全部排在一行中。我需要整个窗口来滚动这些行。

我还需要对行进行分组并将其嵌套到显示/隐藏样式的手风琴组件中。

[+] Row Header 1
    row 1
    row 2
    ...
    row 1001
[+] Row Header 2
    row 1
    row 2
    ...
    row 1001
Run Code Online (Sandbox Code Playgroud)

我不确定如何处理该用例,或者不确定React-Virtualized是否可以处理此类事情。

我尝试过的

结合使用WindowScroller / AutoSizer / List组件,并将这组虚拟化组件放入每个手风琴中。这有效,但不能解决我的问题。问题,因为浏览器仍然无法处理(首次加载大约需要25秒,并且无法滚动)

我是否还需要使用WindowScroller / AutoSizer / List组件来处理行标题的第一级?

任何想法或例子将不胜感激。

javascript reactjs react-virtualized

6
推荐指数
1
解决办法
405
查看次数

标签 统计

javascript ×2

node.js ×1

react-virtualized ×1

reactjs ×1

regex ×1