2016-02-22 4 views
0

У меня есть следующий код для загрузки случайной строки, как требуется из текстового файла:получить случайную строку из текстового файла

$.get('txt/messages.txt', function(txt) { 
var lines = txt.responseText.split("\n"); 
var randLineNum = Math.floor(Math.random() * lines.length); 
save(lines[randLineNum]); // random line from the text file 
}); 

Как я мог бы сделать то же самое с Угловым, чтобы поместить значение в значение области видимости вместо?

+1

Нет недостатка в руководствах по созданию запросов HTTP и помещению данных в переменную области видимости ... и у вас уже есть код для выбора случайной строки ... так в чем проблема? – Quentin

ответ

1

Я могу предоставить вам псевдокод. Тем не менее, есть список вещей при доступе к файлу. Если вы не используете какой-либо веб-сервер и просто проверяете его с помощью file://index.html,, тогда вы, вероятно, сталкиваетесь с проблемами политики с одинаковым исходным кодом. См .:

http://code.google.com/p/browsersec/wiki/Part2#Same-origin_policy.

Многие браузеры не позволяют локально размещенным файлам обращаться к другим локально размещенным файлам. Firefox действительно позволяет это, но только если загружаемый файл содержится в той же папке, что и файл html (или вложенная папка).

Кроме того, обратитесь к: AngularJS: factory $http.get JSON file для получения более подробной информации.

В вашем случае вы хотите либо написать код на заводе, либо получить данные в обратном направлении, либо присвоить его переменной области видимости или просто написать код в контроллере и присвоить значение требуемой переменной.

myApp.controller("fileController", function($scope, $http) { 
$http.get('txt/messages.txt').success(function(data) { 
    var lines = txt.responseText.split("\n"); 
    var randLineNum = Math.floor(Math.random() * lines.length); 
    $scope.varYouWant = randLineNum; 
}); 
Смежные вопросы