我使用mat-table列出用户所选语言的内容.他们还可以使用对话框面板添加新语言.他们添加了一种语言并返回.我希望我的数据源刷新以显示他们所做的更改.
我通过从服务获取用户数据并将其传递到refresh方法中的数据源来初始化数据存储区.
Language.component.ts
import { Component, OnInit } from '@angular/core';
import { LanguageModel, LANGUAGE_DATA } from '../../../../models/language.model';
import { LanguageAddComponent } from './language-add/language-add.component';
import { AuthService } from '../../../../services/auth.service';
import { LanguageDataSource } from './language-data-source';
import { LevelbarComponent } from '../../../../directives/levelbar/levelbar.component';
import { DataSource } from '@angular/cdk/collections';
import { Observable } from 'rxjs/Observable';
import 'rxjs/add/observable/of';
import { MatSnackBar, MatDialog } from '@angular/material';
@Component({
selector: 'app-language',
templateUrl: './language.component.html',
styleUrls: ['./language.component.scss']
})
export class LanguageComponent implements OnInit {
displayedColumns = …
Run Code Online (Sandbox Code Playgroud) 我的API服务存在问题.此服务连接到我的nodejs后端api.
错误说
ERROR TypeError: res.json is not a function
Run Code Online (Sandbox Code Playgroud)
我在最近更新此服务后使用HTTPClient而不是Http时收到此错误.我得到这个响应因为我错过了旧的http与新?如果那样的情况是新的响应,我该如何使用它?
import { Injectable } from '@angular/core';
import { environment } from '../../environments/environment';
import { HttpHeaders, HttpClient, HttpParams } from '@angular/common/http';
import { Response } from '@angular/http';
import { Observable } from 'rxjs/Rx';
import 'rxjs/add/operator/map';
import 'rxjs/add/operator/catch';
import { JwtService } from './jwt.service';
@Injectable()
export class ApiService {
constructor(
private http: HttpClient,
private jwtService: JwtService
) {}
private setHeaders(): HttpHeaders {
const headersConfig = {
'Content-Type': 'application/json',
'Accept': 'application/json'
};
if …
Run Code Online (Sandbox Code Playgroud) 我想使用 axios 重试 5xx 请求。我在 try catch 块中间有我的主要请求。我正在使用 axios-retry 库自动重试 3 次。
我正在使用的 url 会故意抛出 503。但是该请求没有被重试,而是被我的 catch 块捕获。
axiosRetry(axios, {
retries: 3
});
let result;
const url = "https://httpstat.us/503";
const requestOptions = {
url,
method: "get",
headers: {
},
data: {},
};
try {
result = await axios(requestOptions);
} catch (err) {
throw new Error("Failed to retry")
}
}
return result;
Run Code Online (Sandbox Code Playgroud) 我在启动我的android模拟器时遇到了麻烦.似乎没有任何东西加载.
Pixel 2 API 26 Android 8.0 x86.
Linux Ubuntu 16.04 LTS 64位.
12/10/17 2:20 PM模拟器:libGL错误:无法加载驱动程序:vmwgfx_dri.so
2:20 PM模拟器:libGL错误:驱动程序指针丢失
2:20 PM模拟器:libGL错误:无法加载驱动程序:vmwgfx
2:20 PM模拟器:libGL错误:无法加载驱动程序:swrast_dri.so
2:20 PM模拟器:libGL错误:无法加载驱动程序:swrast
2:20 PM模拟器:X请求失败错误:BadValue(整数参数超出操作范围)
2:20 PM模拟器:失败请求的主要操作码:155(GLX)
2:20 PM模拟器:失败请求的次要操作码:24(X_GLXCreateNewContext)
2:20 PM仿真器:失败请求中的值:0x0
2:20 PM仿真器:失败请求的序列号:33
2:20 PM仿真器:输出流中的当前序列号:34
2:20 PM模拟器:进程以退出代码1结束
android android-virtual-device android-emulator android-studio
我已将我的角度应用程序从版本5升级到6,并从以下代码中获取此错误.
const request = this.evidenceService.get().map((res) => res.data)
.catch(error => Observable.of(null));
Run Code Online (Sandbox Code Playgroud)
"Observable"类型中不存在属性"map".
我正在尝试创建一个包含多个字段的索引,其中一个字段是另一个表的外键。但是我收到以下错误:
错误:索引“player_id_UNIQUE”包含实体中缺少的列(收入):player_id
鉴于player_id是我加入的外键,我该如何处理这个问题
import { Column, Entity, Index, JoinColumn, ManyToOne, PrimaryColumn } from "typeorm";
import { PersonPlayer } from "./PersonPlayer";
import { Team } from "./Team";
@Entity()
@Index("player_id_UNIQUE", ["player_id", "period", "year"], { unique: true })
export class Earning {
@PrimaryColumn({length: 36})
id: string;
@Column({nullable: true})
year: number;
@Column({type: 'decimal', nullable: true})
amount: number;
@Column({nullable: true, length: 45})
period: string;
@ManyToOne(() => Team, {nullable: true})
@JoinColumn({name: 'team_id'})
team: Team;
@ManyToOne(() => PersonPlayer, {nullable: true})
@JoinColumn({name: 'player_id'})
player: PersonPlayer;
@Column({nullable: true, length: …
Run Code Online (Sandbox Code Playgroud) 如何在mat表中添加自定义列.
例如,添加包含编辑图标的编辑列,其中包含包含当前元素的id的click事件.
<div class="example-container mat-elevation-z8">
<mat-table #table [dataSource]="dataSource">
<!--- Note that these columns can be defined in any order.
The actual rendered columns are set as a property on the row definition" -->
<!-- Position Column -->
<ng-container matColumnDef="position">
<mat-header-cell *matHeaderCellDef> No. </mat-header-cell>
<mat-cell *matCellDef="let element"> {{element.position}} </mat-cell>
</ng-container>
<!-- Name Column -->
<ng-container matColumnDef="name">
<mat-header-cell *matHeaderCellDef> Name </mat-header-cell>
<mat-cell *matCellDef="let element"> {{element.name}} </mat-cell>
</ng-container>
<!-- Weight Column -->
<ng-container matColumnDef="weight">
<mat-header-cell *matHeaderCellDef> Weight </mat-header-cell>
<mat-cell *matCellDef="let element"> {{element.weight}} </mat-cell> …
Run Code Online (Sandbox Code Playgroud) 我将现有的应用程序从Angular 5升级到6.
运行后ng serve
我得到以下错误:
node_modules/font-awesome/fonts资源路径必须以项目源根目录开头.错误:node_modules/font-awesome/fonts资产路径必须以项目源根目录开头.at assetPatterns.map.assetPattern(/home/kay/Documents/<>/<>/node_modules/@angular-devkit/build-angular/src/utils/normalize-asset-patterns.js:37:23)
如下所示,我有一个资产数组,从节点模块包中提取字体.这在Angular 5中不是问题.
angular.json
{
"$schema": "./node_modules/@angular/cli/lib/config/schema.json",
"version": 1,
"newProjectRoot": "projects",
"projects": {
"demo": {
"root": "",
"sourceRoot": "src",
"projectType": "application",
"architect": {
"build": {
"builder": "@angular-devkit/build-angular:browser",
"options": {
"outputPath": "dist",
"index": "src/index.html",
"main": "src/main.ts",
"tsConfig": "src/tsconfig.app.json",
"polyfills": "src/polyfills.ts",
"assets": [
"src/assets",
"src/favicon.ico",
"../node_modules/font-awesome/fonts"
],
"styles": [
"src/styles.scss",
"src/theme.scss",
"node_modules/font-awesome/css/font-awesome.min.css"
],
"scripts": [
"node_modules/hammerjs/hammer.min.js",
"node_modules/auth0-js/build/auth0.min.js",
"node_modules/moment/min/moment.min.js",
"node_modules/ua-parser-js/dist/ua-parser.min.js",
"node_modules/d3/dist/d3.min.js",
"node_modules/wordcloud/src/wordcloud2.js",
"node_modules/chart.js/dist/Chart.bundle.min.js",
"node_modules/progressbar.js/dist/progressbar.min.js"
]
},
"configurations": {
"production": {
"optimization": true,
"outputHashing": "all",
"sourceMap": false, …
Run Code Online (Sandbox Code Playgroud) 我正在使用 api,有时它会给出一些奇怪的状态代码,只需重试相同的请求就可以修复这些代码。我正在使用 aiohttp 异步地向这个 api 发出请求
我也在使用退避库来重试请求,但是似乎仍然没有重试 401 请求。
@backoff.on_exception(backoff.expo, aiohttp.ClientError, max_tries=11, max_time=60)
async def get_user_timeline(self, session, user_id, count, max_id, trim_user, include_rts, tweet_mode):
params = {
'user_id': user_id,
'trim_user': trim_user,
'include_rts': include_rts,
'tweet_mode': tweet_mode,
'count': count
}
if (max_id and max_id != -1):
params.update({'max_id': max_id})
headers = {
'Authorization': 'Bearer {}'.format(self.access_token)
}
users_lookup_url = "/1.1/statuses/user_timeline.json"
url = self.base_url + users_lookup_url
async with session.get(url, params=params, headers=headers) as response:
result = await response.json()
response = {
'result': result,
'status': response.status,
'headers': response.headers …
Run Code Online (Sandbox Code Playgroud) 我正在使用 Scala 和 Circe。我有以下密封特征。
sealed trait Mode
case object Authentication extends Mode
case object Ocr extends Mode
Run Code Online (Sandbox Code Playgroud)
调用此 case 对象时的输出SessionModel.Authentication
如下:
"Authentication":{}
Run Code Online (Sandbox Code Playgroud)
我需要将其转换为字符串以便输出 "authentication"