Auth0-js с Angular 2 (RC5), Webpack и CLI
Я пытаюсь внедрить auth0 в свой проект Angular 2, и я не хочу использовать виджет блокировки, а вместо этого настраиваю свою собственную форму входа и кнопки для входа в социальную сеть. Поэтому я хочу использовать библиотеку auth0 самостоятельно. И я хочу, чтобы он был в комплекте, поэтому не импортируйте его в index.html.
Я использовал CLI для создания своего проекта (1.0.0-beta.11-webpack.2) и установил auth0-js с NPM. Я могу найти папку "auth0-js" в моих node_modules, теперь мне просто нужно как-то подключить ее к моему приложению.
// login.component
import { Component } from '@angular/core';
import * as Auth0 from "auth0-js";
@Component({
selector: 'app-login',
templateUrl: 'login.component.html',
styleUrls: ['login.component.css']
})
export class LoginComponent implements OnInit {
auth0: any;
constructor() {
this.auth0 = new Auth0({
domain: 'myDomain',
clientID: 'myClientId',
callbackURL: '{http://localhost:4000/}', // in dev-mode
callbackOnLocationHash: true
});
}
loginWithGoogle(connection) {
this.auth0.login({
connection: 'google-oauth2'
});
}
}
Но я получаю это консольное сообщение от Webpack:
ОШИБКА в [по умолчанию] ......... /node_modules/@types/auth0-js/index.d.ts'не является модулем.
Кажется, приложение работает, хотя набор текста не работает. Я установил с npm i @types/auth0-js --save
и он устанавливает наборы для моих узловых модулей, как и ожидалось.
Кажется, что-то не так с печатанием, но что? И это что-то, что я могу исправить сам, или мне нужно подождать, пока кто-нибудь не обновит набор текста, чтобы он был модульным?
Спасибо!!
1 ответ
Я не использовал Auth0. Но я думаю, что это должно работать.
main.ts
import 'auth0-js/standalone';
// Add this to test it.
var auth0 = new Auth0({
domain: 'mine.auth0.com',
clientID: 'dsa7d77dsa7d7',
callbackURL: 'http://my-app.com/callback',
responseType: 'token'
});
Быстрые наборы работают вокруг src/typings.d.ts
declare var Auth0: any;
Лучший способ сделать набор текста:
- Установите auth0 набрав https://www.npmjs.com/package/@types/auth0
- Обновите свой tsconfig
"types": ["auth0"]