相关疑难解决方法(0)

如何从异步调用返回响应?

我有一个foo发出Ajax请求的函数.我怎样才能从中回复foo

我尝试从success回调中返回值,并将响应分配给函数内部的局部变量并返回该变量,但这些方法都没有实际返回响应.

function foo() {
    var result;

    $.ajax({
        url: '...',
        success: function(response) {
            result = response;
            // return response; // <- I tried that one as well
        }
    });

    return result;
}

var result = foo(); // It always ends up being `undefined`.
Run Code Online (Sandbox Code Playgroud)

javascript ajax jquery asynchronous xmlhttprequest

5208
推荐指数
38
解决办法
134万
查看次数

如何在JavaScript中读取外部本地JSON文件?

我在本地系统中保存了一个JSON文件并创建了一个JavaScript文件,以便读取JSON文件并打印出数据.这是JSON文件:

{"resource":"A","literals":["B","C","D"]}
Run Code Online (Sandbox Code Playgroud)

假设这是JSON文件的路径:/Users/Documents/workspace/test.json.

任何人都可以帮我写一段简单的代码来阅读JSON文件并在JavaScript中打印数据吗?

javascript json

210
推荐指数
15
解决办法
79万
查看次数

在角度控制器中访问HTTP GET JSON属性

我在angular.js和$ http.get方法中使用工厂来获取和处理JSON数据.JSON数据似乎已成功解析为工厂,但我有此JSON数据的访问属性问题.

这是我的js代码:

var app = angular.module("app", []);      

app.factory('mainInfo', function($http) { 

    var obj = {content:null};
    //the php will return json data below
    $http.get('http://localhost/test.php').success(function(response){ 
        obj.content = response.records;

    });    

    return obj;    
});


app.controller('Ctrl', function($scope, mainInfo){
    $scope.foo = mainInfo.content;
}) ;
Run Code Online (Sandbox Code Playgroud)

现在,如果我尝试中访问FOO Ctrl控制器,该网页将显示任何数据:
<div ng-controller="Ctrl">Controller: {{foo}}</div>
但是,如果我改变$scope.foo = mainInfoCtrl,那么该网页将正确显示JSON数据.

我可以知道mainInfo.contentCtrl控制器中访问属性的正确方法是什么?

我需要访问JSON属性的原因是因为我需要预处理数据.我打算在图表中使用这些数据,如下面的控制器.目前这个控制器也不工作,因为我在Ctrl控制器中访问JSON属性时遇到同样的问题.

app.controller("LineCtrl", function ($scope, mainInfo) {
    var timePoints = [];
    var percentagePoints = [];
    var i = 0;
    for( i = 0; …
Run Code Online (Sandbox Code Playgroud)

javascript json angularjs

8
推荐指数
1
解决办法
5254
查看次数

将.json文件中的数据加载到Angular中的工厂中

我有一个工厂从数组加载数据,或从这个数组中选择一个元素.但是,如果我将它移动到外部.json文件,我只是得到错误 - 我是新手,除了努力之外,还要努力,记住^^所以,如果我使用简单

$http.get('ports.json').success (function(data){
  var works = data;
});
Run Code Online (Sandbox Code Playgroud)

代码,我得到"ReferenceError:works not defined".如果我试试

$http.get('ports.json').then((portRes){
    var works = res.data;
});
Run Code Online (Sandbox Code Playgroud)

我得到"Uncaught SyntaxError:Unexpected token {"错误.但是这个代码不是工厂,在一个完全不同的页面上工作,所以不知道现在可能出现什么问题:/这里是.json文件,而@链接,你可以查看plunker.Plunker - http://plnkr.co/edit/tMrJMjzc4pl7fQ1PIEiO?p=info

[
  {
    "Title": "Sprite",
    "subTitle": "",
    "Link": "sprite",
    "Thumbnail": "img/portfolio02.png",
    "Image": "img/ismont.png"
  },
  {
    "Title": "Pepsi",
    "subTitle": "Kristályvíz",
    "Link": "pepsi",
    "Thumbnail": "img/portfolio03.png",
    "Image": "img/sanofimont.png"
  }
]
Run Code Online (Sandbox Code Playgroud)

编辑:所以我尝试了你所写的所有内容,但似乎没有任何工作...所以我现在有一个很好的工作因素,我想转移到外部.json文件,非常清楚明白.

  portApp.factory("workFactory", function($http) {  
  var works = [
  {
      Title: "Sprite",
      subTitle: "",
      Link: "sprite",
      Thumbnail: "img/portfolio02.png",
      Image: "img/ismont.png"
  },
  {
      Title: "Pepsi",
      subTitle: "Kristályvíz",
      Link: "pepsi",
      Thumbnail: "img/portfolio03.png", …
Run Code Online (Sandbox Code Playgroud)

javascript json angularjs

4
推荐指数
1
解决办法
1927
查看次数