小编YSA*_*YSA的帖子

如何通过指定每个属性及其值来实例化TypeScript中的对象?

这是我content在服务中实例化一个新对象的片段:

const newContent = new Content(
     result.obj.name
     result.obj.user.firstName,
     result.obj._id,
     result.obj.user._id,
);
Run Code Online (Sandbox Code Playgroud)

问题是这种对象实例化方式依赖于content模型中属性的顺序.我想知道是否有办法通过将每个属性映射到我想要设置的值来实现,例如:

 const newContent = new Content(
     name: result.obj.name,
     user: result.obj.user.
     content_id: result.obj._id,
     user_id: result.obj.user._id,
 );
Run Code Online (Sandbox Code Playgroud)

syntax instantiation instance typescript

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

如何删除堆中的特定元素而不会丢失 Python 中的堆属性?

我正在尝试实现一种算法来解决涉及从最大堆中间删除特定元素的天际线问题。我目前的做法是,maxheap.remove(index)但我必须跟进,heapify(maxheap)否则订单将被取消。我知道在 Java 中你可以使用类似 a 的东西treemap来做到这一点。无论如何,在 python 中这样做是否比调用两个单独的方法更有效,每个方法都需要 O(n) 时间?

python algorithm heap priority-queue python-3.x

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

在对象解构中使用冒号

我仍然不熟悉 ES6 的所有魔力。我在一篇在线文章中看到了这段代码,但我不确定如何PrivateRoute解构输入道具。component: Component在这种情况下做什么?

const PrivateRoute = ({ component: Component, ...rest }) => (
  // Code here
)
Run Code Online (Sandbox Code Playgroud)

我知道我可以做这样的事情来解构一个对象

obj = {firstName: 'John', lastName: 'Doe'};
{first, last} = obj;
Run Code Online (Sandbox Code Playgroud)

并且有first = 'John', last = 'Doe'; 但是,我对示例代码中冒号的引入感到困惑。

这是完整文章的链接:https : //tylermcginnis.com/react-router-protected-routes-authentication/

javascript ecmascript-6 reactjs

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

使用递归回溯(Python)生成集合的所有子集

我试图了解回溯,但是我陷入了这个问题,这是提示:

给定一组不同的整数,返回所有可能的子集。

输入示例: [1,2,3]

输出示例: [[], [1], [2], [3], [1, 2], [1, 3], [2, 3], [1, 2, 3]]

这是我的代码:

def subsets(nums):
    res = []
    backtrack(res, [], nums, 0)
    return res

def backtrack(res, temp, nums, start):
    # print(temp)
    res.append(temp)
    for i in range(start, len(nums)):
        temp.append(nums[i])
        backtrack(res, temp, nums, i + 1)
        temp.pop() # Backtrack
Run Code Online (Sandbox Code Playgroud)

当我返回时,res我得到一个空列表size的列表2^(len(nums)),该列表是正确的大小,但是数字不存在。但是,temp在执行此操作之前res.append(temp),打印表明temp进行了正确的输出。

例如

res = [[], [], [], [], [], [], [], []]

打印报表:

[] [1] [1, 2] [1, 2, …

python recursion permutation backtracking recursive-backtracking

2
推荐指数
1
解决办法
2247
查看次数

如何在 React Fabric-UI 的 CommandBar 中显示 Persona 组件?

我正在尝试在我的 CommandBar 组件的最右侧显示一个 Persona 组件,我将其用作我的应用程序的标头。

这是一个代码片段

const getFarItems = () => {
  return [
    {
      key: 'profile',
      text: <Persona text="Kat Larrson" />,
      onClick: () => console.log('Sort')
    }
  ]
}


const FabricHeader: React.SFC<props> = () => {
  return (
    <div>
      <CommandBar
        items={getItems()}
        farItems={getFarItems()}
        ariaLabel={'Use left and right arrow keys to navigate between commands'}
      />
    </div>
  );
}
Run Code Online (Sandbox Code Playgroud)

这会抛出一个类型错误,因为textprop 需要一个字符串而不是一个组件。任何帮助,将不胜感激!

reactjs office-ui-fabric

2
推荐指数
1
解决办法
1145
查看次数

深度优先搜索、递归、For 循环和 Return

我正在尝试实现 DFS 算法来确定start节点与target节点之间是否存在路径。这是我到目前为止的代码:

# Depth-first search
def find_path2(s, t):
    s.visited = True

    if s.data == t.data:
        return True

    for node in s.neighbors:
        if not node.visited:
            return find_path2(graph, node, t)


node_0 = Node(0)
node_1 = Node(1)
node_2 = Node(2)
node_3 = Node(3)
node_4 = Node(4)
node_5 = Node(5)
node_6 = Node(6)

node_0.neighbors = [node_1]
node_1.neighbors = [node_2]
node_2.neighbors = [node_3, node_0]
node_3.neighbors = [node_2]
node_4.neighbros = [node_6]
node_5.neighbros = [node_4]
node_6.neighbors = [node_5]

start = node_2
target …
Run Code Online (Sandbox Code Playgroud)

python recursion for-loop return depth-first-search

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

在 React 中将函数作为带括号或不带括号的 prop 传递有什么区别?

这可能是我应该知道的,但是当我传递不带括号的函数时,我不太了解组件的行为。这是我的组件代码。

import React, { Component } from 'react';
import { connect } from 'react-redux';
import { Link } from 'react-router-dom';

import AppBar from 'material-ui/AppBar';
import LoginButton from './LoginButton';
import LogoutButton from './LogoutButton';

class Header extends Component {
  renderButton() {
    switch (this.props.auth) {
      case null:
        return
      case false:
        return <LoginButton />
      default:
        return <LogoutButton />
    }
  }



handleTitleClick() {
    return(
      <Link to={this.props.auth ? '/classes' : '/'}>
        QueueMe
      </Link>
    );
  }

  render() {
    const styles = {
      title: {
        cursor: 'pointer',
      }, …
Run Code Online (Sandbox Code Playgroud)

reactjs redux material-ui react-redux

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