1. 程式人生 > >【Angular4學習】--路由傳參一(在查詢引數中傳遞資料)

【Angular4學習】--路由傳參一(在查詢引數中傳遞資料)

前言

路由時傳遞引數有什麼意義呢?舉個簡單的例子,我們進入了某寶或某東,點選了某個商品之後會指定跳轉到相應的頁面,這個時候我們知道在我們點選商品時候頁面進行了跳轉,從商品陳列頁面到了商品詳情頁面,為什麼正好能調到我們點選的那個商品頁面呢,因為路由在跳轉時傳遞了點選商品的資料。那麼它就是怎麼實現傳遞引數呢?

方式

路由傳遞資料的方式有三種,分別是

  1. 在查詢引數中傳遞資料
  2. 在路由路徑中傳遞資料
  3. 在路由配置中傳遞資料

方式一:在查詢引數中傳遞

1.在app.component.html中, 編輯queryParams

<a [routerLink]="['/product']"
[queryParams]="{id:1}">
商品詳情</a> 2.儲存後會發現我們的路由地址已經發生了變化,多了個id=1的引數

這裡寫圖片描述
2.上一步傳了引數之後,這一步需要在商品詳情元件的product.component.ts中接收引數。這裡就用到了上篇部落格中我們提到的第五個物件ActivatedRoute。
name如何獲得ActivatedRoute的引數呢,我們需要先在建構函式中注入。

import { Component, OnInit } from "@angular/core";
import { ActivatedRoute } from "@angular/router"
; @Component({ selector: 'app-product', templateUrl: './product.component.html', styleUrls: ['./product.component.css'] }) export class ProductComponent implements OnInit { private productId:number; //宣告一個變數來接收路由傳遞過來的productId //定義一個構造方法,注入ActivatedRoute引數 constructor(private routeInfo: ActivatedRoute) { } ngOnInit() { this
.productId=this.routeInfo.snapshot.queryParams["id"]; //通過引數快照獲得傳遞過來的id引數的值,然後賦給了productId } }

3.通過插值表示式把ts裡面接收到的路由引數ProductComponent物件本身的product屬性在頁面上顯示

<p>
這裡是商品詳情元件!
</p>
<!-- 通過插值表示式把ts裡面接收到的路由引數ProductComponent物件本身的product屬性在頁面上顯示 -->
<p>
商品ID是:{{productId}}
</p>

效果展示

這裡寫圖片描述

總結

關於通過查詢引數傳遞路由資料的demo展示到這裡,下篇文章分享在URL中傳遞引數。未完待續,感謝您的閱讀……

相關推薦

Angular4學習--路由二 (在URL傳遞資料)

前言: 上一篇文章已經介紹瞭如何路由傳遞引數的第一種方法:在查詢引數中傳遞引數,這篇文章來分享路由傳遞引數的第二種方式,在URL中傳遞引數。 第一步: 1.修改app-routing.modu

Angular4學習--路由(在查詢引數傳遞資料)

前言 路由時傳遞引數有什麼意義呢?舉個簡單的例子,我們進入了某寶或某東,點選了某個商品之後會指定跳轉到相應的頁面,這個時候我們知道在我們點選商品時候頁面進行了跳轉,從商品陳列頁面到了商品詳情頁面,為什麼正好能調到我們點選的那個商品頁面呢,因為路由在跳轉時傳遞了

Absible學習Ansible playbook (

tags 列表 最好 test list playbook ppi -m color * 簡介 執行一些簡單的任務,使用ad-hoc命令可以方便的解決問題,但是有時一個設施過於復雜,需要大量的操作時候,執行的ad-hoc命令是不適合的,這時最好使用playbook。play

機器學習softmax迴歸(

在 softmax迴歸中,我們解決的是多分類問題(相對於 logistic 迴歸解決的二分類問題),類標  可以取  個不同的值(而不是 2 個)。因此,對於訓練集 ,我們有 。(注意此處的類別下標從 1 開始,而不是 0)。例如,在 M

Flutter學習路由

說明 在APP中存在有很多個介面,我們需要將值由一個介面傳入另外一個介面。這種情況就是指路由傳參。 對於路由傳參,需要在接收的介面中定義一個接收傳遞值的變數 class MyHomePage extends StatefulWidget { // 類的構造器

Redis學習Redis筆記()——特點、基礎命令和資料結構

更新時間:2018-10-13 Redis的特性 速度快 持久化(斷電不丟資料) 多種資料結構 支援多種客戶端語言 功能豐富 操作簡單 主從複製 高可用,分散式 Redis的通用命令 key

深度學習線性迴歸()原理及python從0開始實現

文章目錄 線性迴歸 單個屬性的情況 多元線性迴歸 廣義線性模型 實驗資料集 介紹 相關連結 Python實現 環境 編碼

深度學習Softmax迴歸()概念和原理

文章目錄 概述 Softmax Softmox迴歸模型 向量形式 Softmax運算 交叉熵損失函式 真實標籤的變換 平方損失函式 交叉熵損失函式

深度學習網路調

1. 網路層數 CNN:小卷積核,深網路。 RNN:淺網路,最多2層,因為rnn本身就是自迴圈的,展開之後已經很深。 2. 啟用函式 relu,tanh,sigmoid。一般來說,relu可以稍微減緩過擬合。 3. mini-batch size 一般10

Angular學習筆記-路由及重定向路由

路由傳參的三種方式 在查詢引數中傳遞資料 /product?id=1&name=2 => ActivatedRoute.queryParams[id] 在路由路徑中傳遞資料 {path:/product/:id} => /product/1 =&g

機器學習神經網路()——多類分類問題

一、問題引入 早在監督學習中我們已經使用Logistic迴歸很好地解決二類分類問題。但現實生活中,更多的是多類分類問題(比如識別10個手寫數字)。本文引入神經網路模型解決多類分類問題。 二、神經網路模型介紹 神經網路模型是一個非常強大的模型,起源於嘗試讓機

機器學習人像分類()——過程總結

  這個問題其實是上學期某門課的大作業的三個題目之一。公佈題目後我就對這個內容很感興趣,然而由於種種原因,和隊友商量之後仍然選擇了看起來最簡單的句子分類,對此我不無遺憾。   這個寒假裡計劃要乾的事情其實有很多,完成這個專案是其中之一;對CS的熱門方向——如機

WPF學習第三十章 WPF命令模型

  WPF命令模型由許多可變的部分組成。總之,它們都具有如下4個重要元素:   命令:命令表示應用程式任務,並且跟蹤任務是否能夠被執行。然而,命令實際上不包含執行應用程式任務的程式碼。   命令繫結:每個命令繫結針對使用者介面的具體區域,將命令連線到相關的應用程式邏輯。這種分解的設計是非常重要的,因為單個命

WPF學習第四十章 變換

  通過使用變換(transform),許多繪圖任務將更趨簡單;變換是通過不加通告地切換形狀或元素使用的座標系統來改變形狀或元素繪製方式的物件。在WPF中,變換由繼承自System.Windows.Media.Transform抽象類的類表示。下表列出了這些類。 表 變換類    從技術角度看,所

WPF學習第五十章 動畫緩動

  線性動畫的一個缺點是,它通常讓人覺得很機械且不能夠自然。相比而言,高階的使用者介面具有模擬真實世界系統的動畫效果。例如,可能使用具有觸覺的下壓按鈕,當單擊時按鈕快速彈回,但是當沒有進行操作時它們會慢慢地停下來,建立真正移動的錯覺。或者,可能使用類似Windows作業系統的最大化和最小化效果,當視窗解決最終

WPF學習第六十章 組織模板資源

  為表達全國各族人民對抗擊新冠肺炎疫情鬥爭犧牲烈士和逝世同胞的深切哀悼,國務院今天釋出公告,決定2020年4月4日舉行全國性哀悼活動。   當使用控制元件模板時,需要決定如何更廣泛地共享模板,以及是否希望自動地或明確地位用模板。   第一個問題是關於希望在何處使用模板的問題。例如,是將它們限制在特定視窗中嗎

React路由的三種方式 React路由及接收引數的三種方式

React中路由傳參及接收引數的三種方式     方式 一:          通過params        

C語言簡單思路找個數組重複次數最多的數

#include <stdio.h> int main() {     int a[1024];     int b[1024] = {0};                           //初始化每個數出現一次          int i = 0;

Delphi學習ADOQuery連線資料庫的查詢、插入、刪除、修改

//查詢記錄procedure TForm1.Button1Click(Sender: TObject);beginADOQuery.Close;ADOQuery.SQL.Clear;ADOQuery.SQL.Add('select * from YourTABLE wher

React路由及接收引數的方式react-router-dom4.3.1

方式1:通過params 1.法一(在重新整理頁面的時候,引數不會丟失。)    (1)路由表中     <Route path=' /user/:id '   component={User