Банальный вопрос (связанный не только с данным фреймворком) - можно как-нибудь отключить вывод многочисленных предупреждений "anonymous function does not always return a value" в консоли FF по collection.js или придётся смириться? Несколько мешает отладке своих скриптов.
|
Я думаю вам нужно отключить варнинги (предупреждения) JS в настройках отладчика
|
А что с сайтом? Всё, прощай фреймворк? :) Нужна документация!
Про новую версию уж молчу. |
Цитата:
Просто пилю после работы, когда есть настроение - вот так и медленно всё. |
Наконец допилил версию 3.8! Кроме исправления различных багов в новой версии появились следующие фичи:
Сайт снова работает, однако пока выпилил раздел доки, т.к. хочу её улучшить (пока можно читать комменты в исходниках, тем более, что дока генерится по ним), также пока нету главы в учебнике по методу query, но он, как и дока появится уже в течении недели. Теперь на главной страничке сайта можно поиграться с консолью:) По поводу метода query: сейчас он поддерживает только запросы типа SELECT. Есть поддержка переменных (через AS), INNER/LEFT/RIGHT JOIN, GROUP BY, ORDER BY, WHERE, HAVING, TOP, LIMIT, INTO, стат функции SUM/AVG/COUNT и множество строковых функций (можно добавлять свои), а также выполнения сразу нескольких запросов в одном методе (через ; ). Примеры:
var db = new Collection();
db.pushCollection({
users: [
{id: 1, name: 'Kobezzza', lvl: 50},
{id: 2, name: 'Onky', lvl: 55},
{id: 3, name: 'Drobila', lvl: 60},
{id: 4, name: 'Over', lvl: 70},
{id: 5, name: 'Ten', lvl: 60}
],
skils: [
{
sid: 1,
uid: 1,
value: 'moto'
},
{
sid: 2,
uid: 2,
value: 'auto'
},
{
sid: 3,
uid: 1,
value: 'dance'
}
],
buf: [
{
bid: 1,
uid: 1,
b_value: 'ice'
},
{
bid: 2,
uid: 2,
b_value: 'fire'
},
{
bid: 3,
uid: 1,
b_value: 'water'
}
]
});
db.query('SELECT * FROM `users`');
db.query('SELECT el.name, el.lvl FROM `users`');
db.query('SELECT el.name AS nm, el.lvl AS power FROM `users`');
db.query('SELECT * FROM `users`, `skils`');
db.query('SELECT * FROM `users` INNER JOIN `skils` ON id=uid INNER JOIN `buf` ON id=uid');
db.query('\
SELECT TRIM(el.name) AS name, el.lvl, SUM(el.lvl) AS sum FROM `users`\
INNER JOIN `skils` ON id=uid\
INNER JOIN `buf` ON id=uid\
GROUP BY lvl\
HAVING sum > 55\
');
db.query('SELECT * FROM `users` WHERE el.lvl > 50 LIMIT 1, 1');
db.query('SELECT TOP 1 * FROM `users` WHERE el.lvl > 50');
db.query('SELECT * INTO `test` FROM `users` WHERE el.lvl > 50');
Буду рад услышать критику и замечания, а также отвечу на любые вопросы:) Спасибо за внимание. ЗЫ: в версии 3.9 я добавлю поддержку новых хранилищ в браузере (IndexedDB, FlashStorage и т.д., чтобы была возможность хранить большие объёмы данных, вместо 5мб LocalStorage), поддержку популярных шаблонизаторов и закончу систему модульной сборки (можно будет через сайт подключать необходимые модули, чтобы не тащить лишний код). ЗЫЗЫ: кому интересна логика работы метода query, то копать https://github.com/kobezzza/Collecti...ter/files/csql. |
kobezzza,
отличная работа. |
скрипт просто потрясный!
если не секрет, что за сборщик (builder.js) ? master/collection.min.js - это ужатый в advanced mode скрипт? похоже, сжатие ещё не идеальное :) |
Цитата:
|
Цитата:
Цитата:
Цитата:
https://github.com/Kolyaj/BuildJS , правда я его немного допил для своих нужд (в Collection этих нужд нет:)) Цитата:
|
хм ... ну, только сам автор кода знает, как его коду лучше жаться :)
Цитата:
|
| Часовой пояс GMT +3, время: 13:20. |