小编Sim*_*nti的帖子

React 功能组件静态属性

我有一个类组件,另一个类组件作为他的静态属性。现在我切换到一个函数组件,我不知道如何保持静态属性。

class Panel extends React.Component<Props> {
  public static Fieldset = PanelFieldset;
}

class PanelFieldset extends React.Component<Props> {
  ...
}

class App extends React.Component<Props> {
  public render() {
    return (
      <Panel>
        <Panel.Fieldset>
          ...
        </Panel.Fieldset>
      </Panel>
    )
  }
}
Run Code Online (Sandbox Code Playgroud)

现在,切换到功能组件:

const Panel: React.FunctionComponent<Props> = (props) => {
  Panel.Fieldset = PanelFieldset;
}
Run Code Online (Sandbox Code Playgroud)

但我收到错误:属性 'Fieldset' 在类型 'FunctionComponent'.ts(2339) 上不存在

有什么帮助吗?

typescript reactjs

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

使用泛型反应上下文

我们如何在 React.CreateContext 中使用泛型?

我有这个:

interface Props {
}

export interface SearchContextProps {
  dtos: any[];
}

export const SearchContext = React.createContext<SearchContextProps>({
  dtos: []
});

const SearchPage: React.FunctionComponent<Props> = (props) => {
  const [dtos, setDtos] = React.useState<any[]>([]);

  const searchContext = {
    dtos: dtos
  };

  return (
    <SearchContext.Provider value={searchContext}>
      ...
    </SearchContext.Provider>
  );
}

export default SearchPage;
Run Code Online (Sandbox Code Playgroud)

现在我想使用泛型,所以我会写这样的内容:

interface Props<T> {
}

export interface SearchContextProps<T> {
  dtos: T[];
}

export const SearchContext = React.createContext<SearchContextProps<T>>({
  dtos: []
});

const SearchPage = <T extends object>(props: Props<T>) …
Run Code Online (Sandbox Code Playgroud)

generics typescript reactjs react-context

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

错误1451:无法删除或更新父行:外键约束失败

CREATE  TABLE `categories` (
  `idcategories` INT NOT NULL AUTO_INCREMENT ,
  `idparent` INT NULL ,
  `description` VARCHAR(45) NULL ,
  PRIMARY KEY (`idcategories`) );

ALTER TABLE `categories` 
  ADD CONSTRAINT `FK_idparent`
  FOREIGN KEY (`idparent` )
  REFERENCES `ilmercatinodelpulcino`.`categories` (`idcategories` )
  ON DELETE CASCADE
  ON UPDATE CASCADE
, ADD INDEX `FK_idparent` (`idparent` ASC) ;

INSERT INTO `categories` (`idcategories`, `description`)
    VALUES (1, 'cat1');
INSERT INTO `categories` (`idcategories`, `idparent`, `description`)
    VALUES (2, 1, 'cat1_child');
Run Code Online (Sandbox Code Playgroud)

因此,此表表示一个类别,具有ID和自我指向的父ID.我插入了一个类别cat1和一个子类别cat1_child,其父ID为cat1.

现在,我希望能够将cat1的idcategory从1更改为10,因为我在更新CASCADE上设置了外键,我希望cat1_child的idparent也将设置为10.但当我这样做时:

UPDATE `categories` SET `idcategories`=10 WHERE `idcategories`='1';
Run Code Online (Sandbox Code Playgroud)

我收到一个错误:

错误1451:无法删除或更新父行:外键约束失败(categories,CONSTRAINT FK_idparent …

sql cascade mysql-error-1451

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

如何在Struts2 <s:url>中使用JSTL <c:forEach>?

我有这个代码实际上有效:

<s:iterator value="breadcrumb.links" var="link">
    <s:url action='%{#link.url}' var="url" />
    <li>
       <a href="${url}">${link.name}</a>
    </li>
</s:iterator>
Run Code Online (Sandbox Code Playgroud)

我怎么做同样的事情,但用c:foreach而不是s:iterator?

我尝试过:

<c:forEach items="${breadcrumb.links}" var="link">
    <s:url action='${link.url}' var="url" />
    <li>
        <a href="${url}">${link.name}</a>
    </li>
</c:forEach>
Run Code Online (Sandbox Code Playgroud)

但我得到错误:

根据标记文件中的TLD或属性指令,属性操作不接受任何表达式

谢谢.

jsp iterator jstl struts2 ognl

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

Java子类作为参数

Class A
Class B extends A
Run Code Online (Sandbox Code Playgroud)
public static List<A> doSomething(List<A> items, A item) {
    // manipulate items
    return items;
}
Run Code Online (Sandbox Code Playgroud)
List<B> items = new ArrayList<B>();
B item = new B();

items = doSomething(items, item);
Run Code Online (Sandbox Code Playgroud)

错误:方法doSomething(List <A>,A)不适用于参数(List <B>,B)

项目被接受,但项目不被接受.为什么我不能这样做?

怎样才是正确的方法?

java extends subclass

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

request.getHeader("referer"),比后退按钮重新加载页面

JSP1链接到JSP2.

JSP2调用一个servlet,它执行一些操作并以以下结尾:

response.sendRedirect(request.getHeader("referer"));
return;
Run Code Online (Sandbox Code Playgroud)

此时我又回到了JSP2.问题是从那里按下浏览器后退按钮,页面只是重新加载自己而不是返回到JSP1.这是正确的,因为sendRedirect会在历史记录中添加一个条目.

但是我想回到JSP1.有小费吗?

http-referer jsp servlets back

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