当前位置: 首页 > 面试题库 >

在Vaadin 7中添加javascript / jquery和客户端代码

公冶俊达
2023-03-14
问题内容

我有3个问题:

  1. Vaadin中的每个动作都会调用服务器。有没有一种方法可以避免对每个操作调用服务器?像在客户端拥有用于多次执行的特定操作的代码?就像在CSValidation附加组件中一样。

  2. 我想知道如何在Vaadin 7中添加Javascript / JQuery。在Vaadin 6中似乎很容易。但是,我无法在Vaadin 7中使其正常工作。我希望他们现在能使它变得更容易。谁能给我展示一些与此有关的例子。如果是JQuery,它将对我有很大帮助。

  3. 而且也会

Javascript.getCurrent()。execute(“”);

在代码中“执行javascript”或“添加指定脚本”。这会帮助我解决第二个问题吗?


问题答案:

1)Vaadin中的每个动作都会调用服务器。有没有一种方法可以避免对每个操作调用服务器?像在客户端拥有用于多次执行的特定操作的代码?就像在CSValidation附加组件中一样。

这取决于客户端代码。Vaadin是使用服务器端编程模型构建的,但是如果您需要限制服务器调用的数量,则需要您自己进行。通过Vaadin 7,与使用Vaadin
6相比,包含第三方库相对容易一些。

2)我想知道如何在Vaadin 7中添加Javascript / JQuery。在Vaadin 6中似乎很容易。但是,我无法在Vaadin
7中使其正常工作。我希望他们现在能使它变得更容易。谁能给我展示一些与此有关的例子。如果是JQuery,它将对我有很大帮助。

在这里,您有一个很好的教程,介绍了如何将jQuery与Vaadin
7集成:http :
//java.dzone.com/articles/integrating-html-
and-0

它基本上是关于创建JavascriptExtension类的,这是解决方案的主要部分:

@JavaScript({ "https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.js" })
public class JavascriptJQueryExtension extends AbstractJavaScriptExtension {
    ... // Please see the link above for an example of implementation
}

该路径可以是URL或jQuery库的内部路径。

3)在代码中“执行javascript”或“添加指定脚本”。

如Vaadin
7之书(https://vaadin.com/book/vaadin7/-/page/advanced.javascript.html)所述,将执行以下代码段

// Shorthand
JavaScript.getCurrent().execute("alert('Hello')");

在当前处理的服务器请求返回后,将执行JavaScript。(…)

我建议您仔细阅读《瓦丹经》。它包含许多重要信息,这些信息通常有助于解决使用Vaadin时出现的大多数问题。



 类似资料:
  • 该快速入门将展示如何搭建一个 JavaScript 客户端应用程序,其中的用户将登陆到 IdentityServer,使用 IdentityServer 发布的访问令牌调用 Web API,然后从 IdentityServer 注销。 新的 JavaScript 客户端项目 创建一个新的 JavaScript 应用程序项目。这可以是一个简单的空的 Web 项目,或者空的 ASP.NET Core

  • 我尝试将代理添加到Apache CXF3客户端API中。

  • 如何向JMeter脚本添加客户端证书和密钥? 每次我导航到

  • 问题内容: JavaScript中是否可以使用base64编码对字符串进行编码和解码的任何方法? 问题答案: 某些浏览器(例如Firefox,Chrome,Safari,Opera和IE10+)可以原生处理Base64。看一下这个Stackoverflow问题。它正在使用和函数。 对于服务器端JavaScript(节点),可以使用进行解码。 如果您要使用跨浏览器解决方案,则可以使用现有的库,例如C

  • 问题 当你在 CoffeeScript 上创建了一个函数,并希望将它用在有网页浏览器的客户端和有 Node.js 的服务端时。 解决方案 以下列方法输出函数: # simpleMath.coffee # these methods are private add = (a, b) -> a + b subtract = (a, b) -> a - b square = (x)

  • 我想将splashscreen活动添加到我的应用程序中。 我正在使用Android Studio 2.2,预览版3 我只是修改清单,以添加新活动: 这是我的活动。JAVA 如果我更改清单,并放置arround main活动,则应用程序将成功启动 在“我的跑步”窗口中,我可以看到以下消息: adb shell am start-n“me.project.com.project/me.project.