你如何修复"Property does not exist on type 'typeof import"错误?



一个从事身份验证的新手。我下载了auth0-angular包到我的项目,现在我得到这个错误为我的WebAuth()实例创建(IDE: VS Code):

"属性'WebAuth'不存在类型'typeof import("c:/Users/Owner/Desktop/coding_course_docs/AngularAudioPlayer/node_modules/@auth0/auth0-angular/auth0-auth0-angular")' ">

下面是我的代码:

import { Injectable } from '@angular/core';
import * as auth0 from '@auth0/auth0-angular';
import { environment } from '../../environments/environment';

import{
Observable,
BehaviorSubject,
bindNodeCallback, 
of
} from 'rxjs';
import { Router } from '@angular/router';

@Injectable({
providedIn: 'root'
})
export class AuthService {
//instance of auth0-WebAuth that is used for authentication
auth0 = new auth0.WebAuth({
clientID: environment.auth0.clientID,
domain: environment.auth0.domain,
responseType: 'token id_token',
scope: 'openid profile email'
});
//'localStorage' keys (for storing authentication and user profile data) that track whether or not to renew token
private _authFlag = 'isLoggedIn';

private _userProfileFlag = 'userProfile';

你知道我做错了什么吗?

您是否尝试过为auth0使用另一个导入?import * as auth0 from "auth0-js";

请注意,使用它需要以下依赖项:auth0-js,而不是@types/auth0-js(应该添加,但它只是添加,这样你就可以在TypeScript中获得更好的auth0类型)

如果您想使用auth0-angular,那么您应该切换到另一种导入类型:import { AuthService } from '@auth0/auth0-angular';。你可以在这里找到更多关于使用AuthService的细节:https://auth0.com/docs/libraries/auth0-angular-spa

虽然第一个应该解决你的问题,但从长远来看,第二个可能是更好的方法。

相关内容

  • 没有找到相关文章

最新更新