我需要从文件text.log中获取一个文本,下面是我的代码:
vm.logget = function(){
$http({
method: 'Get',
url: 'text.log'
})
.then(function successCallback(response) {
$scope.logget = response;
console.log($scope.logget);
}, function errorCallback(response) {
console.log(response);
console.log('error');
});
}text.log:
creating: /asd/ds/das/das-dsss/
creating: /asd/ds/das/das-dsss/
creating: /asd/ds/das/das-dsss/
creating: /asd/ds/das/das-dsss/
creating: /asd/ds/das/das-dsss/PLunker:http://plnkr.co/edit/g1t4pludTTIAJYKTToCK?p=preview
我在succesCallback中没有得到任何东西。感谢您的提前答复!
发布于 2017-08-17 15:30:53
使用ng-controller="FirstCtrl as vm"或将函数更改为
$scope.logget = function() {
$http({
method: 'Get',
url: 'text.log'
})
.then(function successCallback(response) {
$scope.data = response;
console.log($scope.data);
}, function errorCallback(response) {
console.log(response);
console.log('error');
});
}工作plunker
发布于 2017-08-17 15:31:53
请在您的柱塞中尝试以下代码: HTML:
<body ng-controller="FirstCtrl as vm">
<button ng-click="vm.logget();" type="button" class="btn btn-default">Log</button>
{{vm.loggetData}} <!--See I have changed the Binding variable-->
</body>在控制器中:
var app = angular.module('app', ['ui.bootstrap']);
app.controller('FirstCtrl', function($scope, $http) {
var vm = this;
vm.logget = function(){
$http({
method: 'Get',
url: 'text.log'
}).then(function(response) {
vm.loggetData = response.data;
}, function(response) {
console.log(response);
console.log('error');
});
}
});发布于 2017-08-17 15:33:41
您的代码中有两个问题
首先,您必须使用控制器作为语法
ng-controller="FirstCtrl as vm"
其次,您必须访问响应的data属性
vm.logget1 = response.data;工作柱塞:http://plnkr.co/edit/cqhzeb4dJoyr7BSP2LAA?p=preview
注意:由于已经是您的函数名,因此最好使用不同的变量来存储响应。如果使用controller作为语法,也要尽量避免使用$scope
有关控制器的更多信息,请使用:AngularJs "controller as" syntax - clarification?的
https://stackoverflow.com/questions/45728967
复制相似问题