Расширение Angular / Chrome - Обновление вида при получении обратного вызова - PullRequest
0 голосов
/ 26 ноября 2018

Я разрабатываю расширение, используя angular.Когда контроллер загружается, мне нужно зарядить информацию из локального хранилища:

var app = angular.module("Logins");

app.controller("LoginsCtrl", function($scope) {

    chrome.runtime.sendMessage({message: "get_data"}, function(response) {
        $scope.myText = response.value;
    });
});

И в представлении очень просто:

{{ myText }}

Если я инициирую значение со значением по умолчаниюон отображается правильно, когда я проверяю console.log, значение верное.Но мнение не обновляется.

Я видел некоторые вопросы о tick (), detectChanges (), но я не понимаю, как использовать эту функцию, angular продолжаю говорить мне, что функция не определена.

Можете ли выпомогите мне?

Спасибо,

С уважением,

Мартин

Ответы [ 2 ]

0 голосов
/ 27 ноября 2018

Я нашел ответ, я ошибся: $ scope.apply () Au lieu de $ scope. $ Apply ()

0 голосов
/ 27 ноября 2018

Как меня просили, вот мой полный код:

popup.html:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />

<script src="angular-1.6.9.min.js"></script>
<script src="controller.js"></script>
</head>
<body>
    <div ng-app="Logins" ng-controller="LoginsCtrl">

        {{ myText }}

    </div>
</body>
</html>

Вот controller.js:

var app = angular.module("Logins");

app.controller("LoginsCtrl", function($scope) {
    var getData = function(response, sender, sendResponse) {
        $scope.myText = response.value;
        console.log($scope.myText);
    };
    chrome.runtime.sendMessage({message: "get_data"}, getData.bind(this));
});

Вот background.js:

chrome.runtime.onMessage.addListener( function(request,sender,sendResponse) {
    if(request.message === "get_data") {
        sendResponse({value:"toto"});
    } else {
        console.log('Message unknown');
    }
});

Так что это довольно просто.

С уважением,

Мартин

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...