Лучшие практики для хранения данных JSON, которые будут переданы плагину jQuery - PullRequest
2 голосов
/ 06 февраля 2009

Я ищу "наилучшую практику" относительно того, где JSON должен храниться, если это просто строковый массив. Должно ли оно храниться в переменной в блоке скрипта на странице HTML? Должно ли оно храниться в файле JavaScript вне HTML для разделения? Или он должен храниться в самом плагине?

Если это должен быть внешний js-файл, какова схема именования "наилучшей практики" для этого файла? Я знаю, что принятым именем плагина jQuery является jquery.plugin.js или jquery.plugin-min.js (для уменьшенного файла).

Ответы [ 3 ]

6 голосов
/ 06 февраля 2009

Зависит, если вам нужен JSON сразу, вы можете сохранить его где угодно, чтобы он был выполнен:

<script> var myJsonObj = { ... }; </script>

Если данных много, а данные вам не нужны сразу, вы всегда можете сделать ajax-вызов файла с именем что-то вроде «data.json».

Для присвоения имени плагину, это действительно ваше дело, но да, я считаю, jquery.pluginname.js - это стандартный способ сделать это.

1 голос
/ 06 февраля 2009

Я второй sktrdie, чтобы добавить расширение .json для файла, как это. При первой игре с JSON я столкнулся с тем, что строка JSON не является допустимым файлом JavaScript.

Например, если я вызываю файл с таким содержанием:

{
    'foos': 'whatever',
    'bar': false,
    'items': [1,2,3]
}

как источник тега , я получаю эту ошибку:

Error: invalid label
Line: 2, Column: 1
Source Code:
 'foos': 'whatever',

В прошлом я на самом деле скрывал строки JSON в или в таких диапазонах:

<div id="jsonStorage" style="display:none">
{'foos': 'whatever','bar': false,'items': [1,2,3]}
</div>

Я также использовал скрытые поля формы для этого.

0 голосов
/ 09 февраля 2009

Если это часть плагина, то есть конфигурация по умолчанию, я бы сохранил его в самом файле плагина. Если это внешний конфиг для плагина, то это зависит. Возможно, имеет смысл хранить его в переменной в HTML, т.е.

<script>
var myConfig = {
  "foo" : "bar"
};
</script>

Это может быть особенно актуально, если вам нужен какой-либо JSON, который будет сгенерирован вашим внутренним кодом.

Действительно, ответ "это зависит" - можете ли вы дать более подробную информацию?

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