Tôi đã đọc this tutorial để kết nối ứng dụng AngularJS của tôi với đăng nhập bằng google. Tôi đã thêm nút google như sau (chỉ cần sao chép-dán hướng dẫn):Đăng nhập bằng người dùng google trong ứng dụng AngularJS
Trong đầu tôi đã thêm thẻ meta:
<meta name="google-signin-client_id" content="YOUR_CLIENT_ID.apps.googleusercontent.com">
Và sau đó thêm vào các nút riêng của mình:
<div class="g-signin2" data-onsuccess="onSignIn"></div>
Lúc đầu, tôi chỉ cần sao chép các phương pháp onSignIn
(đó chỉ là một xử lý chung chung vì vậy tôi không sao chép nó vào câu hỏi) từ hướng dẫn và đặt nó trong một thẻ <script>...</script>
và nó làm việc. Bây giờ tôi muốn đặt phương pháp này trong một bộ điều khiển góc. Vì vậy, tôi đã tạo ra một bộ điều khiển như sau:
app.controller('GoogleCtrl', function() {
function onSignIn(googleUser) {
var profile = googleUser.getBasicProfile();
console.log('ID: ' + profile.getId());
console.log('Name: ' + profile.getName());
console.log('Image URL: ' + profile.getImageUrl());
console.log('Email: ' + profile.getEmail());
}
}
Và bọc nút với một div:
<div ng-controller="GoogleCtrl">
<div class="g-signin2" data-onsuccess="onSignIn"></div>
</div>
Mã của tôi không đến được với các phương pháp onSignIn
nay và tôi đang cố gắng để tìm ra những gì tôi có thể làm không.
trong hướng dẫn 'onSignIn' là một hàm trên đối tượng cửa sổ trong khi phiên bản điều khiển chỉ được đặt tên theo chức năng bên trong điều khiển, bạn có thể thêm người nghe vào cửa sổ trong bộ điều khiển – maurycy
@maurycy - Cảm ơn! Tôi phải thừa nhận, tôi không phải là rất thành thạo trong JS và tôi không thực sự chắc chắn tôi hiểu bình luận của bạn hoặc làm thế nào để sử dụng nó. – Avi