如何将变量从一个组件传递到同一级别的另一个组件?我在Step #1: Preparing to unpack .../libapr1_1.5.2-5_amd64.deb ...
Step #1: Unpacking libapr1:amd64 (1.5.2-5) ...
Step #1: Setting up libapr1:amd64 (1.5.2-5) ...
Step #1: Processing triggers for libc-bin (2.24-11+deb9u4) ...
Step #1: Removing intermediate container 1fc38e2094c7
Step #1: ---> 4176a4819577
Step #1: Step 11/21 : ENV GPG_KEYS 05AB33110949707C93A279E3D3EFE6B686867BA6 07E48665A34DCAFAE522E5E6266191C37C037D42 47309207D818FFD8DCD3F83F1931D684307A10A5 541FBE7D8F78B25E055DDEE13C370389288584E7 61B832AC2F1C5A90F0F9B00A1C506407564C17A3 79F7026C690BAA50B92CD8B66A3AD3F4F22C4FED 9BA44C2621385CB966EBA586F72C284D731FABEE A27677289986DB50844682F8ACB77FC2E86E29AC A9C5DF4D22E99998D9875A5110C01C5A2F6059E7 DCFD35E0BF8CA7344752DE8B6FB21E8933C60243 F3A04C595DB5B6A5F1ECA43E3B7BBB100D811BBE F7DA48BB64BCB84ECBA7EE6935CD23C10D498E23
Step #1: ---> Running in b9f5df938ebc
Step #1: Removing intermediate container b9f5df938ebc
Step #1: ---> e41d4c57146b
Step #1: Step 12/21 : ENV TOMCAT_MAJOR 9
Step #1: ---> Running in 93228b5fc301
Step #1: Removing intermediate container 93228b5fc301
Step #1: ---> 9493e206667a
Step #1: Step 13/21 : ENV TOMCAT_VERSION 9.0.14
Step #1: ---> Running in 2127ca636165
Step #1: Removing intermediate container 2127ca636165
Step #1: ---> 29cd9c11963b
Step #1: Step 14/21 : ENV TOMCAT_SHA512 6a06eabacb02eaa2c64772265f8ddb5ddbfbad72b4c5da82e68da739675c3ec7e4692ebb8aa80e1b5512006f60856c939c7c3a5fe4f46f30bd4b575ecd068d54
Step #1: ---> Running in 77ac801c3995
Step #1: Removing intermediate container 77ac801c3995
Step #1: ---> ab68501a7204
Step #1: Step 15/21 : ENV TOMCAT_TGZ_URLS https://www.apache.org/dyn/closer.cgi?action=download&filename=tomcat/tomcat-$TOMCAT_MAJOR/v$TOMCAT_VERSION/bin/apache-tomcat-$TOMCAT_VERSION.tar.gz https://www-us.apache.org/dist/tomcat/tomcat-$TOMCAT_MAJOR/v$TOMCAT_VERSION/bin/apache-tomcat-$TOMCAT_VERSION.tar.gz https://www.apache.org/dist/tomcat/tomcat-$TOMCAT_MAJOR/v$TOMCAT_VERSION/bin/apache-tomcat-$TOMCAT_VERSION.tar.gz https://archive.apache.org/dist/tomcat/tomcat-$TOMCAT_MAJOR/v$TOMCAT_VERSION/bin/apache-tomcat-$TOMCAT_VERSION.tar.gz
Step #1: ---> Running in 5475b4b3fdf0
Step #1: Removing intermediate container 5475b4b3fdf0
Step #1: ---> d35149a8d4e8
Step #1: Step 16/21 : ENV TOMCAT_ASC_URLS https://www.apache.org/dyn/closer.cgi?action=download&filename=tomcat/tomcat-$TOMCAT_MAJOR/v$TOMCAT_VERSION/bin/apache-tomcat-$TOMCAT_VERSION.tar.gz.asc https://www-us.apache.org/dist/tomcat/tomcat-$TOMCAT_MAJOR/v$TOMCAT_VERSION/bin/apache-tomcat-$TOMCAT_VERSION.tar.gz.asc https://www.apache.org/dist/tomcat/tomcat-$TOMCAT_MAJOR/v$TOMCAT_VERSION/bin/apache-tomcat-$TOMCAT_VERSION.tar.gz.asc https://archive.apache.org/dist/tomcat/tomcat-$TOMCAT_MAJOR/v$TOMCAT_VERSION/bin/apache-tomcat-$TOMCAT_VERSION.tar.gz.asc
Step #1: ---> Running in 143651dc16c2
Step #1: Removing intermediate container 143651dc16c2
Step #1: ---> e8cd3a05124b
Step #1: Step 17/21 : RUN set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends gnupg dirmngr; export GNUPGHOME="$(mktemp -d)"; for key in $GPG_KEYS; do gpg --batch --keyserver ipv4.pool.sks-keyservers.net --recv-keys "$key"; done; apt-get install -y --no-install-recommends wget ca-certificates; success=; for url in $TOMCAT_TGZ_URLS; do if wget -O tomcat.tar.gz "$url"; then success=1; break; fi; done; [ -n "$success" ]; echo "$TOMCAT_SHA512 *tomcat.tar.gz" | sha512sum -c -; success=; for url in $TOMCAT_ASC_URLS; do if wget -O tomcat.tar.gz.asc "$url"; then success=1; break; fi; done; [ -n "$success" ]; gpg --batch --verify tomcat.tar.gz.asc tomcat.tar.gz; tar -xvf tomcat.tar.gz --strip-components=1; rm bin/*.bat; rm tomcat.tar.gz*; command -v gpgconf && gpgconf --kill all || :; rm -rf "$GNUPGHOME"; nativeBuildDir="$(mktemp -d)"; tar -xvf bin/tomcat-native.tar.gz -C "$nativeBuildDir" --strip-components=1; apt-get install -y --no-install-recommends dpkg-dev gcc libapr1-dev libssl-dev make "openjdk-${JAVA_VERSION%%[.~bu-]*}-jdk=$JAVA_DEBIAN_VERSION" ; ( export CATALINA_HOME="$PWD"; cd "$nativeBuildDir/native"; gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)"; ./configure --build="$gnuArch" --libdir="$TOMCAT_NATIVE_LIBDIR" --prefix="$CATALINA_HOME" --with-apr="$(which apr-1-config)" --with-java-home="$(docker-java-home)" --with-ssl=yes; make -j "$(nproc)"; make install; ); rm -rf "$nativeBuildDir"; rm bin/tomcat-native.tar.gz; apt-mark auto '.*' > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; rm -rf /var/lib/apt/lists/*; find ./bin/ -name '*.sh' -exec sed -ri 's|^#!/bin/sh$|#!/usr/bin/env bash|' '{}' +; chmod -R +rX .; chmod 777 logs work
Step #1: ---> Running in f7a894cf216c
Step #1: [91m+ apt-mark showmanual
Step #1: [0m[91m+ savedAptMark=bzip2
Step #1: ca-certificates
Step #1: curl
Step #1: dirmngr
Step #1: fontconfig
Step #1: gnupg
Step #1: iproute2
Step #1: iputils-ping
Step #1: libapr1
Step #1: libfreetype6
Step #1: netbase
Step #1: unzip
Step #1: wget
Step #1: xz-utils
Step #1: + apt-get update
Step #1: [0mIgn:1 http://deb.debian.org/debian stretch InRelease
Step #1: Get:2 http://security.debian.org/debian-security stretch/updates InRelease [94.3 kB]
Step #1: Get:3 http://deb.debian.org/debian stretch-updates InRelease [91.0 kB]
Step #1: Get:4 http://deb.debian.org/debian stretch Release [118 kB]
Step #1: Get:5 http://deb.debian.org/debian stretch Release.gpg [2434 B]
Step #1: Get:6 http://security.debian.org/debian-security stretch/updates/main amd64 Packages [492 kB]
Step #1: Get:7 http://deb.debian.org/debian stretch-updates/main amd64 Packages [27.2 kB]
Step #1: Get:8 http://deb.debian.org/debian stretch/main amd64 Packages [7082 kB]
Step #1: Fetched 7907 kB in 1s (4681 kB/s)
Step #1: Reading package lists...
Step #1: [91m+ apt-get install -y --no-install-recommends gnupg dirmngr
Step #1: [0mReading package lists...
Step #1: Building dependency tree...
Step #1: Reading state information...
Step #1: dirmngr is already the newest version (2.1.18-8~deb9u4).
Step #1: gnupg is already the newest version (2.1.18-8~deb9u4).
Step #1: 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Step #1: [91m+ mktemp -d
Step #1: [0m[91m+ export GNUPGHOME=/tmp/tmp.8FhNStIe88
Step #1: + gpg --batch --keyserver ipv4.pool.sks-keyservers.net --recv-keys 05AB33110949707C93A279E3D3EFE6B686867BA6
Step #1: [0m[91mgpg: keybox '/tmp/tmp.8FhNStIe88/pubring.kbx' created
Step #1: [0m[91mgpg: keyserver receive failed: No data
Step #1: The command '/bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends gnupg dirmngr; export GNUPGHOME="$(mktemp -d)"; for key in $GPG_KEYS; do gpg --batch --keyserver ipv4.pool.sks-keyservers.net --recv-keys "$key"; done; apt-get install -y --no-install-recommends wget ca-certificates; success=; for url in $TOMCAT_TGZ_URLS; do if wget -O tomcat.tar.gz "$url"; then success=1; break; fi; done; [ -n "$success" ]; echo "$TOMCAT_SHA512 *tomcat.tar.gz" | sha512sum -c -; success=; for url in $TOMCAT_ASC_URLS; do if wget -O tomcat.tar.gz.asc "$url"; then success=1; break; fi; done; [ -n "$success" ]; gpg --batch --verify tomcat.tar.gz.asc tomcat.tar.gz; tar -xvf tomcat.tar.gz --strip-components=1; rm bin/*.bat; rm tomcat.tar.gz*; command -v gpgconf && gpgconf --kill all || :; rm -rf "$GNUPGHOME"; nativeBuildDir="$(mktemp -d)"; tar -xvf bin/tomcat-native.tar.gz -C "$nativeBuildDir" --strip-components=1; apt-get install -y --no-install-recommends dpkg-dev gcc libapr1-dev libssl-dev make "openjdk-${JAVA_VERSION%%[.~bu-]*}-jdk=$JAVA_DEBIAN_VERSION" ; ( export CATALINA_HOME="$PWD"; cd "$nativeBuildDir/native"; gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)"; ./configure --build="$gnuArch" --libdir="$TOMCAT_NATIVE_LIBDIR" --prefix="$CATALINA_HOME" --with-apr="$(which apr-1-config)" --with-java-home="$(docker-java-home)" --with-ssl=yes; make -j "$(nproc)"; make install; ); rm -rf "$nativeBuildDir"; rm bin/tomcat-native.tar.gz; apt-mark auto '.*' > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; rm -rf /var/lib/apt/lists/*; find ./bin/ -name '*.sh' -exec sed -ri 's|^#!/bin/sh$|#!/usr/bin/env bash|' '{}' +; chmod -R +rX .; chmod 777 logs work' returned a non-zero code: 2
Finished Step #1
ERROR
ERROR: build step 1 "gcr.io/cloud-builders/docker" failed: exit status 2
Step #1: [0m
组件服务中有用户变量
Auth
在第一个组件中,我将其注入,如果获得用户变量的值,则当用户进行身份验证时,我将使用@Injectable({
providedIn: 'root'
})
export class AuthService {
private user: string = null;
getUser() {
return this.user;
}
setUser(username) {
sessionStorage.setItem('username', username);
this.user = sessionStorage.getItem('username');
console.log('VAMOS!!!', this.user);
}
}
将其重定向,即,将下一个组件可视化。
在下一个名为list-user的组件中,我在this.router.navigate (['/ meet'])
中获得了null
。
getUser ()
答案 0 :(得分:2)
当您重定向到['/ meet']时,Authservice组件将从DOM中删除。
这就是为什么它提供空值的原因。
为什么不在当前组件中使用sessionStorage.getItem?
async ngOnInit() {
console.log('HOY',sessionStorage.getItem('username'));
}
答案 1 :(得分:1)
我们可以使用服务全局存储数据,以便我们可以访问任何组件中的数据。
如果在模块级别提供服务(相同的单例实例 将共享所有组件。)
如果您在组件级别提供服务(新实例将
为组件创建)。
因此,请根据您的用例,不要在组件级别注入服务。
const group: any = {};
group['subject'] = new FormControl(null, Validators.required);
const formGroup = new FormGroup(group);
<form [formGroup]="formGroup">
<input matInput [formControlName]="subject" id="subject">
</form>