我工作的一个项目,react使用typescript,我有一个坏的时间弄清楚为什么这个错误发生的事情,我基本上不能使用任何createContext的例子,我在互联网上找到,因为这一点。我具体是从这里获得的:https : //github.com/typescript-cheatsheets/react-typescript-cheatsheet我正在尝试使用“上下文”部分中显示的内容。
import * as React from "react";
export function createCtx<A>(defaultValue: A) {
type UpdateType = React.Dispatch<React.SetStateAction<typeof defaultValue>>;
const defaultUpdate: UpdateType = () => defaultValue;
const ctx = React.createContext({
state: defaultValue,
update: defaultUpdate
});
function Provider(props: React.PropsWithChildren<{}>) {
const [state, update] = React.useState(defaultValue);
return <ctx.Provider value={{ state, update }} {...props} />;
}
return [ctx, Provider] as [typeof ctx, typeof Provider];
}
Run Code Online (Sandbox Code Playgroud)
问题是,每次它说有此错误时,都无法ctx在行中找到名称空间:
return <ctx.Provider value={{ state, update }} {...props} …Run Code Online (Sandbox Code Playgroud) 我有一个在Wildfly 8.1.0Final上运行的jsf应用程序,只有在谷歌浏览器中,当我点击登录按钮,我收到ViewExpiredException,在其他浏览器中,或在Chrome隐身模式下,工作完美!
有人知道会是什么?
20:29:18,531 INFO [stdout] (default task-49) 2014-09-16 20:29:18 ERROR context:218 - javax.faces.application.ViewExpiredException: viewId:/login.jsf - A exibição de /login.jsf não pôde ser restaurada.
20:29:18,532 INFO [stdout] (default task-49) at com.sun.faces.lifecycle.RestoreViewPhase.execute(RestoreViewPhase.java:210)
20:29:18,532 INFO [stdout] (default task-49) at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
20:29:18,532 INFO [stdout] (default task-49) at com.sun.faces.lifecycle.RestoreViewPhase.doPhase(RestoreViewPhase.java:121)
20:29:18,532 INFO [stdout] (default task-49) at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:198)
20:29:18,532 INFO [stdout] (default task-49) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:646)
20:29:18,532 INFO [stdout] (default task-49) at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:85)
20:29:18,533 INFO [stdout] (default task-49) at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:61)
20:29:18,533 INFO [stdout] (default task-49) at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36) …Run Code Online (Sandbox Code Playgroud)