我在我的 Angular 应用程序中使用了 ngx-translate。我在 app.module.ts 中导入并完成了所有操作:
import {HttpClientModule, HttpClient} from '@angular/common/http';
import {TranslateModule, TranslateLoader} from '@ngx-translate/core';
import {TranslateHttpLoader} from '@ngx-translate/http-loader';
export function HttpLoaderFactory(http: HttpClient) {
return new TranslateHttpLoader(http, '/assets/i18n/', '.json');
}
@NgModule({
imports: [
BrowserModule,
HttpClientModule,
TranslateModule.forRoot({
loader: {
provide: TranslateLoader,
useFactory: HttpLoaderFactory,
deps: [HttpClient]
}
})
],
bootstrap: [AppComponent]
@NgModule({
imports: [
BrowserModule,
HttpClientModule,
TranslateModule.forRoot({
loader: {
provide: TranslateLoader,
useFactory: HttpLoaderFactory,
deps: [HttpClient]
}
})
],
bootstrap: [AppComponent]
Run Code Online (Sandbox Code Playgroud)
我正在导入和导出模块,例如 github ngx-translate 页面上的示例。翻译器工作正常。
但是我有一个子文件夹,里面有他自己的 module.ts 文件,pages.module.ts。当我想在 pages 文件夹中的 html 文件上使用 …
我正在尝试使用动态名称实现datepicker组件.
我正在使用Angular 4开发基于Angular Material 2的项目,这是我的实现:
<input mdInput [mdDatepicker]="'start' + column.name + 'Picker'" placeholder="Start {{column.label}}" formControlName="start{{column.name}}">
<button mdSuffix [mdDatepickerToggle]="'start' + column.name + 'Picker'"></button>
<md-datepicker #start{{column.name}}Picker></md-datepicker>Run Code Online (Sandbox Code Playgroud)
其中,column.name动态地改变我的HTML页面.
在运行时我收到此错误:
ERROR TypeError: this._datepicker._registerInput is not a function
Run Code Online (Sandbox Code Playgroud)
你对这个错误的原因有什么看法吗?
注意:column.name用mdDatepicker and mdDatepickerToggle属性中的静态值替换可以解决问题,但我的目标是使用动态值运行此代码
编辑:使用 和属性中column.name的静态值替换只解决运行时错误.但是,在所有内容都是静态的情况下,不会触发datepicker,这意味着即使名称中的名称也必须包含静态值mdDatepickermdDatepickerToggle#start{{column.name}}Pickermd-datepicker
我已经在我的 Angular-Cli 应用程序中实现了 ngx-translate 并且在我执行以下操作时工作正常:
<div>{{ 'some.value' | translate }}</div>
Run Code Online (Sandbox Code Playgroud)
但是我该如何翻译 HTML 组件的属性呢?就像是:
<div data-text="{{ 'some.value' | translate }}"></div>
Run Code Online (Sandbox Code Playgroud)
(上面这段代码不起作用)
在此先感谢您提供的任何帮助...
JB
我正在尝试构建一个包含即时消息模块的应用程序,主要挑战之一是无论用户数量或交换的消息数量如何,都要保持应用程序的可扩展性。
在我读到的一篇文章中,可以使用带有“订阅”的 GraphQL 构建实时应用程序,除此之外,它使用起来很简单,并且具有最大限度地减少往返对象检索的优势,从而减少资源使用。
但是,如果我们需要向系统添加新的服务器/节点以进行水平扩展怎么办?这可以使用 GraphQL 吗?
以允许水平缩放的 websockets 实现为例,有SocketCluster。我想知道单独由 GraphQL 开发的应用程序是否可以跨多个节点/机器进行扩展,或者它必须与另一个框架(如 SocketCluster)一起使用才能实现这一目标。
为了执行类似连接的操作,我们可以同时使用GraphQL和Mongoose来实现这一目的。
在问任何问题之前,我想举一个下面的“任务/活动”示例(此代码没有经过测试,仅出于示例的目的而给出):
Task {
_id,
title,
description,
activities: [{ //Of Activity Type
_id,
title
}]
}
Run Code Online (Sandbox Code Playgroud)
在猫鼬中,我们可以使用populate方法检索与任务相关的活动,如下所示:
const task = await TaskModel.findbyId(taskId).populate('activities');
Run Code Online (Sandbox Code Playgroud)
使用GraphQL和Dataloader,我们可以得到类似以下结果:
const DataLoader = require('dataloader');
const getActivitiesByTask = (taskId) => await ActivityModel.find({task: taskId});
const dataloaders = () => ({
activitiesByTask: new DataLoader(getActivitiesByTask),
});
// ...
// SET The dataloader in the context
// ...
//------------------------------------------
// In another file
const resolvers = {
Query: {
Task: (_, { id }) => await TaskModel.findbyId(id),
},
Task: { …Run Code Online (Sandbox Code Playgroud) 我正在开发一个角度应用程序,我必须检查表单更改,并根据更改执行一些操作.我知道,这可以通过使用来实现,$scope.watch但这会让我失去性能.
我想要实现的目标
我有一个预先填充的表单,我将使用表单数据作为参考,angular.copy()并与原始数据进行比较.
我也试过$parsers检查,但失败了.那么,有什么方法可以实现这一目标吗?
假设我们有一个具有以下属性的对象:
public class MyObject {
private String attr1;
private Integer attr2;
//...
public String getAttr1() {
return this.attr1;
}
public Integer getAttr2() {
return this.attr2;
}
}
Run Code Online (Sandbox Code Playgroud)
mylist根据其属性对此对象的列表进行排序的一种方法attr1是:
mylist.sort(Comparator.comparing(MyObject::getAttr1));
Run Code Online (Sandbox Code Playgroud)
是否可以以动态方式在方法中使用此代码,并使用getAttr1根据其名称返回对象属性的getter的方法替换该部分?就像是:
public void sortListByAttr(List<MyObject> list, String attr) {
list.sort(Comparator.comparing(MyObject::getGetterByAttr(attr)));
}
Run Code Online (Sandbox Code Playgroud)
该MyObject::getGetterByAttr(attr)部分不编译,我写的只是作为一个例子来解释我的想法
我尝试使用以下代码实现一个方法new PropertyDescriptor(attr, MyObject.class).getReadMethod().invoke(new MyObject())但是仍然无法使用该方法中的参数调用comparing方法
我正在尝试制作一个批处理文件,该文件将创建我的服务,并为如何准确列出每个参数而苦苦挣扎。我对此进行了大量研究,但似乎找不到正确的语法。这就是我现在所拥有的:
nssm install MDHIS_WebClient "%MDHIS2_HOME%/MDHIS_WebClient.cmd" AppDirectory %MDHIS2_HOME% DisplayName MDHIS_WebClient Start SERVICE_AUTO_START DependOnService MSSQLSERVER AppNoConsole 1 AppStopMethodConsole 30000
Run Code Online (Sandbox Code Playgroud)
这有效,但参数被忽略。任何人都可以向我展示正确语法的示例吗?
我试图在有角度的应用程序中实现排序数据表,并且我实现的示例运行时出现以下错误:
ERROR TypeError: Cannot read property 'apply' of undefined
at TableDataSource.webpackJsonp.332.TableDataSource.connect (data-table.component.ts:83)
Run Code Online (Sandbox Code Playgroud)
导致错误的方法是Observable.merge():
connect(): Observable<UserData[]> {
const displayDataChanges = [
this._exampleDatabase.dataChange, //BehaviorSubbject
this._sort.sortChange, //EventEmitter
];
return Observable.merge(...displayDataChanges).map(() => {
return this.getSortedData();
});
}
Run Code Online (Sandbox Code Playgroud)
您是否知道此错误的原因?我在Google上搜索了关于我收到但没有成功的消息的解释
如果互联网在我的应用程序的任何位置关闭,我正在寻找一个更好的解决方案,连接失败的弹出对话框.
我有提供商来检查连接.但是我没有得到很好的解决方案来调用每个事件或每个页面更改.
angular ×4
graphql ×2
node.js ×2
angularjs ×1
arguments ×1
command-line ×1
express ×1
ionic3 ×1
java-8 ×1
javascript ×1
mongoose ×1
nssm ×1
observable ×1
rxjs ×1
service ×1
typescript ×1