在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML5/ Agnular4 這段傳查詢參數(shù)的代碼,問題出在哪里了?

Agnular4 這段傳查詢參數(shù)的代碼,問題出在哪里了?

原來問過,但一直沒有解決……
https://segmentfault.com/q/1010000014617475?_ea=3684537

這個請求是由哪發(fā)出的呢?
Request URL: http://localhost:4200/api/products?title=1234&category=-1

哪位朋友指點一下啊?
我應(yīng)該如何排查錯誤呢

  search(params: ProductSearchParams): Observable<Product[]> {
    return this.http.get('/api/products', { search: this.encodeParams(params) }).map(res => res.json());
  }
  private encodeParams(params: ProductSearchParams) {
    return Object.keys(params)
      .filter(key => params[key])
      .reduce((sum: URLSearchParams, key: string) => {
        sum.append(key, params[key]);
        return sum;
      }, new URLSearchParams());
  }
}

1.點擊頁面搜索應(yīng)該看到的正確結(jié)果如下:

bV9uOm?w=338&h=380

2.當(dāng)前情況是參數(shù)傳遞失敗,如下:
bV9uOI?w=383&h=542

3.搜索模板如下:

<form name="searchForm" role="form" [formGroup]="formModel" (ngSubmit)="onSearch()" novalidate>
  <div class="form-group" [class.has-error]="formModel.hasError('minlength', 'title')">
    <label for="productTitle">商品名稱:</label>
    <input formControlName="title" type="text" id="productTitle" placeholder="商品名稱" class="form-control">
    <span class="help-block" [class.collapse]="!formModel.hasError('minlength', 'title')">
      請至少輸入3個字
    </span>
  </div>
  <div class="form-group"  [class.has-error]="formModel.hasError('positiveNumber', 'price')">
    <label for="productPrice">商品價格:</label>
    <input  formControlName="price" type="number" id="productPrice" placeholder="商品價格" class="form-control">
    <span class="help-block" [class.collapse]="!formModel.hasError('positiveNumber', 'price')">
      請輸入正數(shù)
    </span>
  </div>
  <div class="form-group">
    <label for="productCategory">商品類別:</label>
    <select  formControlName="category" id="productCategory" class="form-control">
        <option value="-1">全部分類</option>
        <option *ngFor="let category of categories" [value]="category">{{category}}</option>

    </select>
  </div>
  <div class="form-group">
    <button type="submit" class="btn btn-primary btn-block">搜索</button>
  </div>
</form>

4.產(chǎn)品模板如下:

<div class="container">
    <div class="row">
        <div *ngFor="let product of products | async" class="col-lg-4">
            <div class="img-thumbnail margin_b">
                <img class="card-img-top" [src]="imgUrl" alt="Card image cap">
                <div class="card-body">
                    <h5 class="card-title">{{product.price}} 元</h5>
                    <h5 class="card-title">
                        <a [routerLink]="['/product', product.id]">{{product.title}}</a>
                    </h5>
                    <p class="card-text">{{product.desc}}</p>
                    <a href="#" class="btn btn-primary">Go somewhere</a>
                </div>
            </div>
        </div>
    </div>
</div>
回答
編輯回答
萌面人

似曾相識。我覺得點擊后有請求就不是訂閱的問題了。
你在這里面打印一下看看能不能讀出表單數(shù)據(jù)

this.productService.searchEvent.subscribe(
    (params) => {
        console.log(params)
        this.products = this.productService.search(params)
    }
);
2017年3月5日 08:23
編輯回答
款爺

我覺得應(yīng)該檢查一下傳入encodeParams函數(shù)的參數(shù)。感覺可能是傳入?yún)?shù)相應(yīng)key取值為null。因為有成功的情況,說明如果參數(shù)合理的話應(yīng)該是沒問題的。

2018年4月15日 07:20
編輯回答
荒城

看看你的模板是什么樣的

2017年7月3日 12:44