小编los*_*193的帖子

在React中将状态属性添加到内联样式

我有一个具有这样的内联样式的react元素:(缩短版本)

      <div className='progress-bar'
           role='progressbar'
           style={{width: '30%'}}>
      </div>
Run Code Online (Sandbox Code Playgroud)

我想用我的州的属性替换宽度,虽然我不太清楚如何做到这一点.

我试过了:

      <div className='progress-bar'
           role='progressbar'
           style={{{width: this.state.percentage}}}>
      </div>
Run Code Online (Sandbox Code Playgroud)

这甚至可能吗?

css state styles reactjs

5
推荐指数
1
解决办法
6633
查看次数

通过在 React 中更改父组件的 Props 来更新子组件

我有一个组件,其状态作为道具传递给子组件。我注意到即使父组件的状态发生变化,子组件也不会重新渲染。

基于使用 shouldComponentUpdate 的官方 React 文档:

“第一次渲染内部组件时,它将使用 { foo: 'bar' } 作为 value 属性。如果用户单击锚点,父组件的状态将更新为 { value: { foo: 'barbar' } },触发内部组件的重新渲染过程,它将接收 { foo: 'barbar' } 作为 prop 的新值。

问题在于,由于父组件和内部组件共享对同一对象的引用,因此当该对象在 onClick 函数的第 2 行发生变异时,内部组件所拥有的 prop 将发生变化。因此,当重新渲染过程开始并且调用shouldComponentUpdate时,this.props.value.foo将等于nextProps.value.foo,因为事实上,this.props.value引用与nextProps.value相同的对象。

因此,由于我们会错过道具上的更改并缩短重新渲染过程,因此 UI 不会从“bar”更新为“barbar”。”

如果我不能使用 shouldComponentUpdate,我将如何强制子组件根据父组件的 props 更改重新渲染?

父组件

我希望子组件根据给 showDropzone 的布尔值重新渲染。

     <Dropzone 
      onDrop={this.onDrop} 
      clearFile = {this.clearFile}
      showDropzone = {this.state.filePresent}/>
Run Code Online (Sandbox Code Playgroud)

子组件

export default class Dropzone extends Component {
  constructor(props) {
    super(props);
  }

  render() {
    const { onDrop } = this.props;
    const {showDropzone} = this.props;
    const {clearFile} …
Run Code Online (Sandbox Code Playgroud)

components render jsx reactjs

5
推荐指数
1
解决办法
5437
查看次数

在 Git 中存储然后变基

我当前的分支中有一些未提交的更改。

我必须从另一个开发分支重新建立基础,但我想先隐藏我的更改。

如果我执行 git stash 然后我 git rebased dev 分支,我会丢失存储吗?

git rebase

5
推荐指数
1
解决办法
5197
查看次数

修复 Windows 中损坏且松动的 Git Head

我的计算机由于内核恐慌而关闭,我在 Windows 虚拟机上丢失了 git 存储库。当我访问 .net 时,出现以下错误:

corrupted loose reference file: HEAD
Run Code Online (Sandbox Code Playgroud)

我有一个名为 .git 的文件夹,其中包含我的分支列表。

在此输入图像描述 有没有办法可以将其转换回 git 实体?或者我必须重新克隆目录?

git corrupt file loose

5
推荐指数
1
解决办法
6328
查看次数

克隆一个分支并将其推送到私有仓库中

我获得了访问 5 人共享的私人仓库的权限。我做了一个

git clone https://github.com/thecompany/theprogram.git
Run Code Online (Sandbox Code Playgroud)

然后我创建了一个新分支并尝试使用以下方法推送它:

git push --set-upstream the-new-branch
Run Code Online (Sandbox Code Playgroud)

但我收到一个错误:

remote: Repository not found.
fatal: repository 'https://github.com/thecompany/theprogram.git/' not found
Run Code Online (Sandbox Code Playgroud)

如何将我的分支推送到 github?

git github

5
推荐指数
1
解决办法
220
查看次数

检查JSX中的空字符串

在React/JSX中是否有办法检查用户的输入字符串是否为空?

Component.js

{((this.props.description.name ==" ")||(this.props.description.name.length==""))? 
Run Code Online (Sandbox Code Playgroud)

当用户输入任何内容或空字符串长度为1个空格时,此条件有效,但如果空字符串长度超过1个空格,则失败.有没有JSX技巧检查这个或我应该在我的reducer中处理这个?

string reactjs react-jsx redux

4
推荐指数
2
解决办法
2万
查看次数

使用 moment.js 查找日期范围之间的完整周和天

我的日期范围是

var currDay = Jan.1
var birthday = Feb.15
Run Code Online (Sandbox Code Playgroud)

我知道找出周数的差异是

currDay.diff(birthday, 'week')
Run Code Online (Sandbox Code Playgroud)

但是,有没有办法找到完整的星期和剩余的天数?

javascript momentjs

4
推荐指数
1
解决办法
8635
查看次数

找到字符串的完全匹配

我使用以下函数来查找字符串中单词的完全匹配.

def exact_Match(str1, word):
    result = re.findall('\\b'+word+'\\b', str1, flags=re.IGNORECASE)
    if len(result)>0:
        return True
    else:
        return False

exact_Match(str1, word)
Run Code Online (Sandbox Code Playgroud)

但是,如果只是因为以下字符串获奖,我会得到"奖励"和"获奖"这两个词的完全匹配.

str1 = "award-winning blueberries"
word1 = "award"
word2 = "award-winning"
Run Code Online (Sandbox Code Playgroud)

我如何才能得到它,以便re.findall将整个单词与连字符和其他标点符号相匹配?

python regex string match

3
推荐指数
1
解决办法
1万
查看次数

在React中使用map()传递附加参数

我目前正在映射这样一个道具:

  renderList(item) {
      return(
        </div>
          shows up
        </div>
    )
  }

  render() { 
    return(
        <div> 
          {this.props.items.map(this.renderList)}
        </div>
    );
  }
}
Run Code Online (Sandbox Code Playgroud)

我有另一个我想通过的道具

this.props.completed
Run Code Online (Sandbox Code Playgroud)

我想做的简化版

  renderList(item, completed) {
      return(
        </div>
          shows up
        </div>
    )
  }

  render() { 
    return(
        <div> 
          {this.props.items.map(this.renderList(this.props.items, this.props.completed)}
        </div>
    );
  }
}
Run Code Online (Sandbox Code Playgroud)

是否可以通过此地图功能传递另一个道具?

javascript parameters arguments prop reactjs

3
推荐指数
1
解决办法
4416
查看次数

使用Lodash/Javascript过滤嵌套数组

我有以下对象数组:

var sizeList = [
    { id: 1, title:"Test1",
        type:[{name:"Big", present:false}, {name:"Small", present:true}, {name:"Medium", present:false}]
    },

    { id: 2,title:"Test2",
        type:[{name:"Big", present:false}, {name:"Small", present:true}, {name:"Medium", present:false}]
    },
    { id: 3,title:"Test3",
        type:[{name:"Big", present:false}, {name:"Small", present:true}, {name:"Medium", present:true}]
    }
  ]
Run Code Online (Sandbox Code Playgroud)

我想过滤这个List为True的列表.我目前有这个设置.

var specificSizes = _.filter(sizeList.type, { 'name': 'Medium', 'present': true })
Run Code Online (Sandbox Code Playgroud)

这会不断返回一个空数组.我也试过这个:

       specificSizes = _.filter(sizeList.type, function (type) {
          return _.some(type, {'name': 'Medium', 'present':true})
        });
Run Code Online (Sandbox Code Playgroud)

javascript arrays sorting list lodash

3
推荐指数
1
解决办法
4027
查看次数