http调用后在angularjs中进行数据绑定

时间:2018-09-04 08:36:37

标签: angularjs

我是AngularJS的新手,我试图将用户单击按钮时通过Http调用获取的某些数据绑定在一起。当我在test()之外使用数据绑定时,数据绑定工作正常,但在test()内无法使用,因此只需单击按钮即可调用。
 我在做什么错了?

<head>
  <script>
    function test() {

    fetch(url)
            .then(function(response) {
                return response.json();
            })
            .then(function(myJson) {

                var response = myJson;
                var results = parseJSON(response);

                angular.module("blabla", [])

                    .controller("myController", function($scope) {
                        $scope.test= {};
                        $scope.test.title = "testttt!";
                    });
    });


    }
  </script>
</head>

<body ng-app="blabla">
  <div class="search">
    <form id="search_form" method="get" onSubmit="return test()">
      <input type="text" class="_search" placeholder="Search" id="search_">
      <input title="Search" value="" type="submit" class="search_btn">
    </form>
  </div>
  <div ng-controller="myController">
    <h2>Welcome {{test.title}}</h2>
  </div>
</body>

1 个答案:

答案 0 :(得分:0)

onSubmit="return test()"替换为onSubmit="test()"

Angular解释器正在尝试调用该语句(我认为它认为它是一个函数)return(带有参数test()

此外,还需要在控制器test()的{​​{1}}中声明$scope

获得骨架演示Angulr应用并尝试进行一些小的改动以尝试了解其工作方式可能是个好主意。