angularJS如何使用Web worker在后台运行进程?这样做我应该遵循什么模式?
目前,我正在使用一个在单独的Web worker中具有该模型的服务.此服务实现以下方法:
ClientsFacade.calculateDebt(client1); //Just an example..
Run Code Online (Sandbox Code Playgroud)
在实现中,此方法使用数据向worker发送消息.这允许我抽象它在一个单独的线程中执行的事实,我还可以提供一个查询服务器的实现,甚至是在同一个线程中执行此操作的实现.
由于我是javascript的新手,而且我只是从其他平台上回收知识,我想知道这是你要做的事情,还是我正在使用的Angular,提供了一种方法.这也引入了我的架构的变化,因为工作人员必须明确地将更改推送到控制器,然后控制器更新其值,然后这反映在视图中,我是否过度设计了这个?有点令人沮丧的是,网络工作者通过不允许我共享内存等来"保护"我.
JNDI就像一张关于类固醇的地图吧?我使用一个键来查找对象的引用.什么是InitialContext?我似乎没有得到这个想法.
如果我有@ManagedBean
这个@SessionScoped
,为什么我会使用@Stateful
EJB?我之前用过购物车并保持会话状态,但由于托管bean将在用户会话期间保存,我可以在那里存储状态,然后调用SLSB以获取业务逻辑.那是对的吗?如果是,那么有状态的ejbs将留给更具体的应用程序,例如何时需要交易等?
我正在使用角度5,我得到一个错误,继承人的代码:
signIn(provider) {
this._auth.login(provider).subscribe(
(data) => {
console.log(data);
this.hideForm = false;
this.emaill = data.email;
this.nom = data.last_name;
this.prenom = data.first_name;
this.profileImage = data.image;
})
}
Run Code Online (Sandbox Code Playgroud)
错误是:
src/app/authentification/authentification.component.ts(34,28):错误TS2339:"对象"类型上不存在属性"电子邮件".src/app/authentification/authentification.component.ts(35,25):error TS2339:类型'Object'上不存在属性'last_name'.src/app/authentification/authentification.component.ts(36,28):error TS2339:类型'Object'上不存在属性'first_name'.src/app/authentification/authentification.component.ts(37,34):错误TS2339:属性'对象'上不存在属性'图像'.
当您使用非规范化架构时,传播更新的最佳方法是什么?是否应该在同一个功能中完成?
我有这样的架构:
var Authors = new Schema({
...
name: {type: String, required:true},
period: {type: Schema.Types.ObjectId, ref:'Periods'},
quotes: [{type: Schema.Types.ObjectId, ref: 'Quotes'}]
active: Boolean,
...
})
Run Code Online (Sandbox Code Playgroud)
然后:
var Periods = new Schema({
...
name: {type: String, required:true},
authors: [{type: Schema.Types.ObjectId, ref:'Authors'}],
active: Boolean,
...
})
Run Code Online (Sandbox Code Playgroud)
现在说我想对作者进行非规范化,因为该period
字段将始终只使用句点的名称(这是唯一的,不能有两个具有相同名称的句点).然后说我将我的模式转换为:
var Authors = new Schema({
...
name: {type: String, required:true},
period: String, //no longer a ref
active: Boolean,
...
})
Run Code Online (Sandbox Code Playgroud)
现在,Mongoose不再知道period字段连接到Period模式.因此,当一个句点的名称发生变化时,我可以更新该字段.我创建了一个服务模块,提供如下界面:
exports.updatePeriod = function(id, changes) {...}
Run Code Online (Sandbox Code Playgroud)
在此函数中,我将完成更改以更新需要更新的期间文档.所以这是我的问题.那么,我应该更新此方法中的所有作者吗?因为那时该方法必须知道Author模式和使用period的任何其他模式,从而在这些实体之间创建大量耦合.有没有更好的办法?
也许我可以发出一个事件,一段时间已经更新,所有具有非规范化周期参考的模式都可以观察到它,这是一个更好的解决方案吗?我不太确定如何解决这个问题.
我有一个kotlin对象定义如下:
data class UserUpdateRequest(val map: Map<String, Any?>) {
@get:Email
val email: String? by map
val firstName: String? by map
val lastName: String? by map
}
Run Code Online (Sandbox Code Playgroud)
因此工作正常,所以我遇到的问题是属性可以为空,当我访问一个时,通过这样做instance.email
会抛出一个NoSuchElementException
if if属性未在地图中设置.
相反,如果返回它会更方便null
,因为它是可选的/可空的.有没有办法在不编写自己的代表的情况下实现这一目标?
我正在使用Java EE 6 Web Profile开发Web应用程序.我想通过电子邮件向新用户发送其帐户的激活链接.我该如何实现呢?我正在使用JSF2.这样做有什么规范或推荐方法吗?
我正在开发一个部署在glassfish上的Java EE 6应用程序,我一直在阅读有关如何发送电子邮件的教程,但它们似乎已经过时或过于复杂.我希望可能在这个规范中有一种相当简单的发送邮件的方式,因为很多东西变得如此简单.你能指出我正确的方向还是可以给我看一些示例代码?
我正在使用JSF 2.0.我正在使用
<h:messages>
Run Code Online (Sandbox Code Playgroud)
标记以呈现错误消息.我可以使用css来设置我的消息的样式,但是我创建了一个复合组件来呈现可以关闭的消息,并使用一些Jquery向它们添加效果.
我已经看过如何自定义消息的教程,但是大多数都依赖于CSS并自定义文本输出但我想要做的是生成特定的标记,类似于
<myComp:fancyMessage text="etcetcetc error msg" type="error" />
Run Code Online (Sandbox Code Playgroud)
而不是常规的消息标记.这可能吗?
编辑:
我不想设置jsf消息的样式.既不添加背景也不改变其风格,而是创建我自己的消息html标记.这里:
http://balusc.blogspot.com/2010/07/using-html-in-jsf-messages.html
我已经找到了如何在你的消息中添加html.我想要的是封装我的复合组件中的所有html,然后以这种方式使用我的复合组件:
<mycomp:messages/>
Run Code Online (Sandbox Code Playgroud)
要么
<mycomp:message for="componentID" />
Run Code Online (Sandbox Code Playgroud)
消息和消息都创建自己的html标记
我有一个模板,我可以在组件验证失败时向div添加一个CSS错误类,它会对浏览器产生非常好的效果.
现在,我不需要为组件添加一个css类(这对我没有帮助),而是我需要更改它周围的html的css,这对jQuery非常简单,但我可以'似乎找不到验证失败的javascript回调,这可能吗?我也在使用primefaces(如果他们提供这样的功能).
标记:
<div class="control-group ERROR_CLASS_GOES_HERE_IF_VALIDATION_FAILED">
<label class="control-label">Input value:</label>
<div class="controls">
<h:inputText class=" inputbox" type="text" required="true" /> <!--Component that can fail -->
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
如果输入文本为空,我需要包含"控制组"的div才能有一个额外的类.我可以把它变成一个<h:panelGroup>
所以它是一个JSF组件,但我仍然不知道如何做到这一点.Javascript似乎更容易,因为我可以做:
jQuery("#ID_OF_DIV").addClass("error_class")
Run Code Online (Sandbox Code Playgroud) java ×5
jsf ×3
jsf-2 ×2
activation ×1
angular ×1
angularjs ×1
ejb ×1
email ×1
facelets ×1
java-ee-6 ×1
javascript ×1
jndi ×1
kotlin ×1
managed-bean ×1
message ×1
mongodb ×1
mongoose ×1
node.js ×1
primefaces ×1
web-worker ×1