问题标签 [gwt-history]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
gwt - GWT 历史机制
我正在尝试将历史记录功能添加到我的 GWT 应用程序中。
据我了解,GWT 必须提供的基本历史支持确实是基本的……或者我应该说非常基本。
除了当前位于堆栈顶部的令牌之外,它并没有真正存储有关状态的任何其他信息。这意味着我希望得到像弹出令牌这样的信息,这是我们刚刚离开的那个,也可能会得到信息,无论是按下还是前进。
基本机制假定页面没有“高级”状态,即如果当前标记是“菜单”,那么我们从哪里进入这个菜单页面并不重要。但是,我想检查我们此时是否要离开特定页面,因为如果我们这样做了,那么我想先显示警告以保存数据。
此外,我的一些页面没有使用默认构造函数,而是从当前显示的页面中获取特定信息。这使我无法在一个集中的地方创建所有页面,并且应用程序中的所有按钮都只是在玩弄历史令牌。(如第 37 页所建议的那样。)
无论如何,我在这里很迷茫。我不确定要在不重写我的应用程序的情况下实现对后退/前进的基本支持要采取什么途径。
任何人的想法或想法?
java - 未调用 GWT 历史 onValueChange()
我在一个实现这个类的类中有一个方法ValueChangeHandler<String>
是从方法中初始化的,onModuleLoad()
就像这样
该initialise()
方法如下所示;
当应用程序以空白历史令牌启动时,即按下启动默认浏览器onValueChange()
时,调用该方法,在应用程序运行时更改 url 调用该onValueChange()
方法。
但是,在 URL 中带有标记的空白浏览器选项卡中输入 URL,即http://127.0.0.1:8888/MyApp.html?gwt.codesvr=127.0.0.1:9997#mjh&jdfhfh=786543
,不会调用该onValueChange()
方法。当我到达声明的History.newItem(initialToken, true);
一部分时,我很困惑。if
我认为这将确保onValueChange()
被调用。怎么了?
c++ - 在 C++ 中使用 this 时出错
在这一行:move(n-1,dest,this);
得到一个错误,说对非 const 的引用的初始值必须是左值;
gwt - 如何将 History.js 与 GWT 一起使用?
我想使用Google Web Toolkit 中的History.js。
我知道 GWT 有它自己的 History 功能,但我不喜欢它,因为它使用 URI 中的哈希值,我想尽可能地使用新的 HTML5 History API。
我能想到的将 History.js 和 GWT 一起运行的唯一当前方法是用纯 Javascript(或 jQuery)编写 History.js 部分,然后手动调用 GWT 方法。
如果可以从 GWT 的 Java 文件中使用整个 History.js 功能,那就太好了。
java - GWT 历史 - 状态是否在状态中创建历史或历史结果?
我对我为 GWT 的历史机制找到的示例感到有些困惑。
查看并运行示例GWT History似乎不是很好。
历史通常被解释为应用程序更改的结果。
该示例有多个问题:
初始状态也是空令牌和令牌“page0”
--> “历史” Back 在“离开应用程序”前两次显示同一页面
历史和状态以某种方式间接同步。
- Tab 选择会引发一个选择事件,该事件会设置一个新标记。设置令牌会导致历史值更改,再次选择相同的选项卡 (?)。这种模式有点令人费解。
换个角度看问题会不会错?
我认为总是根据历史令牌更改状态会更干净。
在那种情况下ValueChange
将实现“状态渲染”。想要改变状态的按钮不会直接使用History.newItem()
方法,而是使用方法间接改变状态valueChange
。
例如
还有一个想要显示注册的按钮:
这以某种方式使用历史来驱动应用程序状态。
这有什么问题,为什么到处都是反其道而行之?
gwt - Google Analytics - 使用历史令牌跟踪页面
我想知道 Google Analytics 是否会自动跟踪使用 ajax 历史令牌('#')保留状态的页面,例如使用 GWT 开发的。我的应用程序有一个 html 页面,不同的模块(页面)具有相同的 URL,除了 # 之后的部分(例如 www.mysite.com?test=true#page=Contacts/id=1)。
此外,如果默认情况下没有提到这种行为,有没有办法设置 Google Analyics 以具有此功能?
编辑:
我发现这篇文章解释了如何跟踪#hashtag: http ://www.searchenginepeople.com/blog/how-to-track-clicks-on-anchors-in-google-analytics.html
但是,如果我使用此解决方案,是否会在用户按下带有 href'#hastag' 的锚点时或仅在使用该主题标签直接访问 aa 页面时记录页面访问(在这种情况下,我应该注册一个调用 trackPageview 的函数当历史改变时)?
java - GWT History - 为什么它会改变我屏幕的焦点?
我有一个简单的应用程序结构,它将在任何时候包含三个组合——我的页眉、页脚和内容组合。复合材料按以下方式布置。
复合材料被分配给<div>
my中的三个EntryPoint
。还包含一个历史处理程序,EntryPoint
如下所示。
在我的 Composites 中,我有几个ClickEvent
类似于以下内容的处理程序。
这很好地记录了历史。当我单击后退按钮时,它还会将我带到相应的页面。但是,它具有将浏览器聚焦在内容合成上的非常奇怪的效果,即浏览器滚动到底部的效果。这不是一个交易破坏者,但它有点破坏用户体验。(如果解释不清楚,请告诉我,我会添加图片)
究竟是什么原因造成的,我该如何解决?
gwt - gwt - 历史 - 如何“保持” UI 状态
我尝试了展示如何从历史中获取数据以重新生成 UI的示例;我在所有“历史使用”示例中看到的主要内容仅与 UI 重新生成有关,因此它不是静态方式......
但是“每个 UI 状态都可能有其独特的 url,就像 JSF 对流所做的那样”呢?例如,我有应用程序网址,例如
应用程序默认 UI 包含有助于浏览我的测试目录的主菜单;我试图通过以这种方式构建 url 来使 UI 动态保持在历史上成为可能
但是当我点击互联网浏览器“刷新”按钮时,网址保持不变,http://localhost:8080/myapp/MyApp.html#menu_testcategory_page1
但 UI 恢复到默认状态:(
所以我的问题是
即使在单击浏览器的刷新按钮后(我的意思是卸载/加载窗口事件发生),纯 gwt 是否有最佳方式保持相同的 UI 状态?
谢谢
PS 重量 2.3
java - GWT 历史记录 - newItem(String historyToken, boolean issueEvent) 在 FF41 中损坏
看起来像History#newItem(String, boolean)
带有参数的 GWT 方法boolean
控制值更改事件已被破坏,即使传递了false
值,在最近的 Firefox 版本中(特别是 41)
有人坚持同样的问题吗?有没有办法来解决这个问题?
gwt - 页面刷新后如何防止gwt应用程序进入登录页面?
我有一个带有登录页面和主页的 gwt 应用程序。登录后应用程序进入主页。我想要的是如果我刷新页面以留在主页而不是登录页面。我已经阅读了很多东西,我尝试了 History Mechanish,但没有结果。这是我的代码:
我也试过:
这是使用 History.addValueChangeHandler 处理页面刷新的正确方法吗?我将不胜感激任何帮助。