Anatoly
Да не было такого раньше никогда.
hlomzik
не может быть
Дима
Чувак, тебе точно говорят
Дима
Такой модуль должен импортиться
Дима
И всегда так было
no cats
Помогите, пожалуйста. Есть клиент, на нём написано вот такое:
gridStore.setParams({
"DateStart": grid.down("#dateMin").value,
"DateEnd": grid.down("#dateMax").value,
"TS": grid.config.dockedItems[1].tbar[0].items.items[1].getValue()
}
, "REQUEST"
);
gridStore.reload(gridStore._requestParams);
Надо эти параметры поймать сервером (на нод.жс) и фильтровать по ним строки грида стрелчной функцией.
(мои тут только попытки самого фильтра)
async function getMarketData(path, fields, calcFields, filter, sliceStart, sliceEnd) {
let query = defineCollectionByPath(path).complete + RESULT_NAME + " = " + RESULT_NAME;
if (filter) {
query += ".filter(" + filter + ")";
filter = "(TradingSystem) => (-1 != inArray(TradingSystem, TS))"
"(Data) => (Data >= DateStart && Data <= DateEnd)"}
Slava
.
Rafael 🌵
JSON.parse()?
Григорий Владимирович
lodash ?
Григорий Владимирович
JSON.parse()?
как подсветка кода работает в телеграмме?)
hlomzik
второй параметр JSON.parse()
Rafael 🌵
Григорий Владимирович
ok!
Vadim
Привет. Кто-нибудь работал с google maps api?
У меня, после того, как оканчивается карта появляет фон и его можно круть до бесконечности. Я хз, как это пофиксить
Кто-нибудь знает, как это лечить?
A
druggable:false
Rinat
Иван
Кто то знает сложность алгоритма indexof?
Иван
Ну и findIndex заодно
δμ Dmitry
N
Энлов Свичблейд
Помогите, пожалуйста. Есть клиент, на нём написано вот такое:
gridStore.setParams({
"DateStart": grid.down("#dateMin").value,
"DateEnd": grid.down("#dateMax").value,
"TS": grid.config.dockedItems[1].tbar[0].items.items[1].getValue()
}
, "REQUEST"
);
gridStore.reload(gridStore._requestParams);
Надо эти параметры поймать сервером (на нод.жс) и фильтровать по ним строки грида стрелчной функцией.
(мои тут только попытки самого фильтра)
async function getMarketData(path, fields, calcFields, filter, sliceStart, sliceEnd) {
let query = defineCollectionByPath(path).complete + RESULT_NAME + " = " + RESULT_NAME;
if (filter) {
query += ".filter(" + filter + ")";
filter = "(TradingSystem) => (-1 != inArray(TradingSystem, TS))"
"(Data) => (Data >= DateStart && Data <= DateEnd)"}
чет нихера не понятно кроме того что это extJS
Rafael 🌵
ребзь, а такое же есть для браузеров?
https://github.com/pillarjs/path-to-regexp
Sergey
1000
кто-то использовал fast-sha256 в Angular 2?
Артём
Почему в последних вариантах так происходит, что свойства менются в обоих объектах? А если просто обернуть в функцию и создание нового объекта возвращать через return, то все впорядке
x = (function() {
var Obj = {
y: 10,
k: 30,
insideObj: {
z: 20
}
};
Obj.changeY = function(arg) {
this.y = arg;
};
Obj.changeK = function(arg) {
Obj.k = arg;
};
Obj.changeZ = function(arg) {
this.insideObj.z = arg;
};
// return
return function() {
return Object.create(Obj);
}
}()),
a = x(),
b = x();
// end vars
a.y = 111;
console.log(a.y); // 111
console.log(b.y); // 10
a.changeY(222);
console.log(a.y); // 222
console.log(b.y); // 10
a.changeK(333);
console.log(a.k); // 333
console.log(b.k); // 333
a.changeZ(444);
console.log(a.insideObj.z); // 444
console.log(b.insideObj.z); // 444
Артём
т.е если без замыкания то все нормально создается
Rafael 🌵
Артём
x = function() {
var Obj = {
y: 10,
k: 30,
insideObj: {
z: 20
}
};
Obj.changeY = function(arg) {
this.y = arg;
};
Obj.changeK = function(arg) {
Obj.k = arg;
};
Obj.changeZ = function(arg) {
this.insideObj.z = arg;
};
// return
return Object.create(Obj);
}
Артём
сейчас без замыкания. Все впорядке создается
Артём
Короче, в первом (111) и втором вариенте (222), создаются свойства в новых объектах. А где (333), там видимо обращается к объекту-прототипу и так же где и (444), не может найти insideObj и обращается к прототипу. Но! если создать его в ручную:
a.insideObj = {}
a.changeZ(444);
console.log(a.insideObj.z); // 444
console.log(b.insideObj.z); // 20
Выведет так как нужно.
В чем причина пока хз в чем, может из-за того что сборщик мусора сохраняет объект прототип и по этому к нему и идет обращение
δμ Dmitry
Артём
Я не веню GC, а ищу в чем причина. Так Object.create должен копии же делать с того прототипа
δμ Dmitry
>> Метод Object.create() создаёт новый объект с указанными объектом прототипа и свойствами.
δμ Dmitry
>> Object.create(proto[, propertiesObject])
δμ Dmitry
Он не делает копию, просто использует прототип
δμ Dmitry
Это по сути укороченый вариант с шаманствами в виде
function a () {}
a.prototype = X
Артём
да это понятно F = function () {};
F.prototype = {xxx:1000};
F.constructor = F;
return new F;
Артём
но, если без замыканя сделать, то тот же object.create создает вполне независымые копии свойста которого можно меня налево и на право и дополнять другими что не отражается на других потомках и на самом прототипе
δμ Dmitry
нет, без замыкания у тебя сами прототипы разные, нет там копий, поставь лог в самом начале функции
Anonymous
доброе утро всем )
δμ Dmitry
CherryTea
Для всех кто имеет свои репозитории на гитхабе фидбэк - пожалуйста, если у вас есть самостоятельные части, сделайте их подмодулями и вынесите в отдельный реп. Не делайте вот так вот как здесь:
https://github.com/mrdoob/three.js/tree/master/utils/exporters/blender
CherryTea
ради конвертера приходится клонить весь реп
CherryTea
(250 метров...)
Артём
нет, без замыкания у тебя сами прототипы разные, нет там копий, поставь лог в самом начале функции
Аналогичный код без литералов. Так же в замыкании. Тут все работает как надо.
y = (function() {
var C = function () {
this.y = 10;
this.k = 30;
this.insideObj = {z: 20};
}
C.prototype.changeY = function(arg) {
this.y = arg;
};
C.prototype.changeK = function(arg) {
this.k = arg;
};
C.prototype.changeZ = function(arg) {
this.insideObj.z = arg;
};
// return
return C;
}()),
a = new y(),
b = new y();
Евгений
Anonymous
никакой демократии
CherryTea
- Привет
- Привет
- Ты не занят?
- Занят
- А Можешь помочь?
- Ну?
(прошло 5 минут)
- Сейчас, подожди, я свою мысль сформулирую
CherryTea
😕
Артём
так тоже работает
y = (function() {
var C = function () {
this.y = 10;
this.k = 30;
this.insideObj = {z: 20};
};
C.prototype = {
changeY: function(arg) {
this.y = arg;
},
changeK: function(arg) {
this.k = arg;
},
changeZ: function(arg) {
this.insideObj.z = arg;
}
};
// return
return C;
}())
Артём
а вот так нет
y = (function() {
var C = function () {};
C.prototype = {
y: 10,
k: 30,
insideObj: {
z: 20
}
changeY: function(arg) {
this.y = arg;
},
changeK: function(arg) {
this.k = arg;
},
changeZ: function(arg) {
this.insideObj.z = arg;
}
};
// return
return C;
}())
CherryTea
для таких полотен можно было бы и в https://jsfiddle.net/
Артём
console.log - Показывает. Те прототипы которые были созданы в замыканиях, с помощью литералов с использованием Object.create(). К потомкам свойства не копируются, а создается пустой объект со свойстов __proto__, при попытки изменить свойство оно заменяется в самом прототипе и тем самым у друго потомка такие же данные как и у того в котором изменили. А если все свойства создавать через конструктор с использованием this.a =123; То свойства копируются к потомкам и все работает. Даже если методы добавлены через литерал объекта C.prototype = {change: function() {}}; А без использования замыкания все методы работают и все свойства копируются в потомки.
Причем в JS оба методы аналогичны(литеральный и прототип-ориентированый), но в литеральном поведение отличается, хотя код один и тот же, только в разных стилях. А в чем прична я так и не понял))
Артём
а в книгах именно этот втирают не уподобляться ООП а создавать через Object.create
δμ Dmitry
Артём
как не копируются когда вот console.log у потомка:
Object {}
y: 222
// а эта уже цепочка прототипов, ведет к основному прототипу
__proto__:
ObjectchangeK: function (arg)
changeY: function (arg)
changeZ: function (arg)
insideObj:
Objectk: 333y: 10__proto__: Object
CherryTea
three.js пишет что colorAmbient больше не поддерживается, но что вместо него я что-то не понял
CherryTea
в Migration-Guide вообще не слова. Кто-нибудь сталкивался?
d
Всем привет. Есть просмоторщик пдф: https://mozilla.github.io/pdf.js/web/viewer.html. Нужно получить ClientRect[] от выделенного текста: window.getSelection().getRangeAt(0).getClientRects() В хроме, файрфоксе все ок, а в ие всегда пустой пустой массив, кроме случаев, когда выделяешь одно слово. В чем может быть проблема? Какие еще есть варианты получить ClientRect[] спешл фор ие?
🆃🅰🆁🅸🅺 🇺🇦
в ИЕ ))
🆃🅰🆁🅸🅺 🇺🇦
https://github.com/mozilla/pdf.js/issues/5513
Woldemar186
d
d
Woldemar186
Michail
Всём кто на React.Amsterdam привет 👋
Dima
Woldemar186
Если речь о браузере, то можно просто верстать принт версию и вызывать print()
Ее же можно сразу как ссылку установить чтобы параметры динамические были. Условия такие, большая БД с книгами и каждая книга имеет свой айди и язык отображения, и когда кликают ссылку чтобы сразу открывалась пдф, но не копия страницы где была ссылка, а совершенно другая страница но с данными о книге с этой
Дима
Serhiy
Sergey
Smooth Operator
Дима
Дима
Когда у тебя проект из кучи подмодулей, начинается проблема синхронизации зависимостей
CherryTea
ну да, либа которая экспоритрирует модель в json из блендера и tree.js имеют просто огромное количество совместных зависимостей
CherryTea
(нет)