小编Gal*_*ger的帖子

角度Apollo错误处理

大家好,我对apollo-angular和apollo-link-error的问题有点困惑.我尝试了几种不同的方法,我似乎无法在我的角度网络应用程序中捕获客户端的任何错误.我在下面发布了我的尝试.任何建议或一组额外的眼睛将非常感激.

基本上我所要做的就是当发生错误时提示我的用户有关问题.如果有人有一些替代npm包而不是apollo-link-error我都是耳朵.

尝试1:

export class AppModule {
  constructor (apollo: Apollo, httpLink: HttpLink) {
    apollo.create({
      link: httpLink.create({
        uri: 'http://localhost:8080/graphql'
      }),
      cache: new InMemoryCache()
    });

    const error = onError(({ networkError }) => {
      const networkErrorRef:HttpErrorResponse = networkError as HttpErrorResponse;
      if (networkErrorRef && networkErrorRef.status === 401) {
        console.log('Prompt User', error);
      }
    });
  }
}
Run Code Online (Sandbox Code Playgroud)

尝试2:

export class AppModule {
  constructor (apollo: Apollo, httpLink: HttpLink) {
    apollo.create({
      link: httpLink.create({
        uri: 'http://localhost:8080/graphql'
      }),
      cache: new InMemoryCache()
    });

    const error = onError(({networkError}) => {
      if (networkError.status …
Run Code Online (Sandbox Code Playgroud)

typescript apollo apollo-client angular

8
推荐指数
2
解决办法
2883
查看次数

Angular 2,TypeScript和ui-router - 如何获取状态参数

嘿大家我想知道如何使用Angular 2,TypeScript和ui-router从状态获取状态参数.我尝试查看新文档,但他们似乎没有很多关于ng2 ui-router的文档.

下面我添加了我的component.ts以供参考.任何帮助将不胜感激.

import {Component} from '@angular/core';
import {HTTP_PROVIDERS} from '@angular/http';
import {UIRouter} from 'ui-router-ng2/router';

@Component({
  selector: 'Detail',
  template: require('./detail.html'),
  providers: [HTTP_PROVIDERS]
})

export class Detail {
  constructor(private uiRouter:UIRouter) {
    console.log('uiRouter ', this.uiRouter.globals.params);
  }
}
Run Code Online (Sandbox Code Playgroud)

在Angular 1中,我会这样做:

(function() {
  'use strict';

  angular
  .module('private')
  .controller('Controller', Controller);

  function Controller($state) {
    var vm = this;
    console.log($state.params.studentID);
  }
})();
Run Code Online (Sandbox Code Playgroud)

再次任何建议将不胜感激.

javascript angularjs typescript angular-ui-router angular

5
推荐指数
1
解决办法
5176
查看次数

在会话存储中设置嵌套对象值

大家好,很难更新我存储在sessionstorage中的值.我尝试了几种方法来定位嵌套对象值而没有运气.任何帮助将不胜感激.

我在JavaScript中创建的对象

   var projectInfo = {
        project1: {
            name: 'Unique name',
            extraCredit: true
        }
        project2: {
            name: 'Unique name',
            extraCredit: true
        }
    }
Run Code Online (Sandbox Code Playgroud)

我如何坚持参加会议

sessionStorage.setItem('projectInfo', JSON.stringify(projectInfo));
Run Code Online (Sandbox Code Playgroud)

如何在项目信息中定位嵌套项目名称.例如

sessionStorage.setItem(projectInfo.project1.name, 'Student Fund raiser')
Run Code Online (Sandbox Code Playgroud)

javascript session-storage

5
推荐指数
1
解决办法
504
查看次数

从 Angular 组件中的服务捕获承诺中的错误

大家好,我在 angular 中创建的邮政服务遇到了问题。当我调用服务时,努力从我的组件中捕获错误。我能够从服务中捕获错误,但我需要从我的组件中执行此操作以正确处理错误。任何建议将不胜感激。

服务

sendData(obj) {
 let promise = new Promise((resolve) => {
   this.http.post(this.URL, obj, this.httpOptions)
     .toPromise()
     .then(
      res => {
        console.log(res);
        resolve(res);
      }
     )
     //.catch((err) => { 
     //  console.log(err);
     //  throw err;
     //});
   });
  return promise;
}
Run Code Online (Sandbox Code Playgroud)

成分

this._myservice.sendData(this.myobj)
  .then(function (res) {
    console.log('data sent');
  })
  .catch(error => {
      console.warn('from component:', error);
      // this console warn never gets logged out
  });
Run Code Online (Sandbox Code Playgroud)

我是否需要更新我的服务中的某些内容以允许我从组件中捕获错误?

javascript typescript es6-promise angular

3
推荐指数
1
解决办法
8898
查看次数

星级评定,半星支持

我在渲染星级时遇到了问题,希望我能在我的问题上得到一些额外的关注。我的正常评级对于整数来说效果很好,但我很难显示半星。例如,我创建了一项为我提供 0-5 级评分的服务,因此我得到的值类似于 2.5、3 或 5 等...

在我创建一个 switch case 并为每个变体创建一个 svg 之前,我希望能得到一些提示。以下是我目前所拥有的,任何提示将不胜感激。

<?php
     for ($i = 1; $i <= $totalRating; $i++) {
     if($starRating < $i ) {
        echo "<img src=\"/icons/star-empty.svg\">";
      }
      else {
        echo "<img src=\"/icons/star.svg\">";
      }
    }
?>
Run Code Online (Sandbox Code Playgroud)

理想情况下,我想在循环末尾添加一个条件并检查 half 并 echo "";

html php svg

2
推荐指数
1
解决办法
3255
查看次数

带有 ng-classes 的样式输入占位符颜色样式

当 ng 类位于输入字段时,我在定位输入占位符文本时遇到困难。我能够标记输入背景颜色,但不能标记占位符文本颜色。任何帮助都会很棒。

HTML:

<form class="my-form">
  <input type="text" placeholder="Quick test" required/>
</form>
Run Code Online (Sandbox Code Playgroud)

Scss:

.my-form {
 input.ng-invalid.ng-touched {
 background: #efefef;
 ::-webkit-input-placeholder {
  color: #FF0000;
 }
 :-moz-placeholder {
  color: #FF0000;
 }
 ::-moz-placeholder {
  color: #FF0000;
 }
 :-ms-input-placeholder {
  color: #FF0000;
  }
 }
}
Run Code Online (Sandbox Code Playgroud)

类 Angular 添加到所需元素

<input type="text" placeholder="Quick test" required="" 
class="ng-pristine ng-invalid ng-invalid-required ng-touched">
Run Code Online (Sandbox Code Playgroud)

html css angularjs

1
推荐指数
1
解决办法
9339
查看次数

从组件(ngx-slick-carousel)引用光滑的实例

我在尝试从我的组件中引用 ngx-slick-carousel 的实例时遇到了困难。我在一个页面中有几个轮播,当我在两者之间切换时,我需要对它们进行脱毛和处理。目前我能够从我的组件中引用光滑轮播的唯一方法是,如果我使用 afterChange 方法并从我的模板中传递事件对象。

例如

在模板中

<ngx-slick-carousel 
     class="carousel gallery-one" 
     #galleryOne="slick-carousel" 
     [config]="slideConfig" 
     (afterChange)="afterChange($event)">

     <div ngxSlickItem *ngFor="let slide of slides.gallery" class="slide">
        <img src="{{slide.img}}">
     </div>
</ngx-slick-carousel>
Run Code Online (Sandbox Code Playgroud)

在组件中

afterChange(e) {
  console.log(e.slick);
}
Run Code Online (Sandbox Code Playgroud)

如何从组件中的任何位置引用 after change 方法中的光滑实例?我尝试了几种方法,但似乎无法使其正常工作。任何想法将不胜感激。

typescript slick.js angular

0
推荐指数
1
解决办法
5086
查看次数