← All posts tagged JS

lurker
JS по мотивам #3043652 — дано:

<template><div @click="incrementShit">{{ shit }}</div></template>

@Component
export default class Shit extends Vue {
public shit = 0;
public incrementShit = () => {
this.shit ++;
console.log( this.shit );
}
}

в консольку будет логаться правильное значение, а на экране будет 0. и хоть убейся.

однако,
public incrementShit() {

будет работать. потому шо vue создаёт прокси, а this в стрелке показывает не в него, а в исходный объект
lurker
JS odesk я понял, для чего и для кого в js нужны Proxy — для костылей и для ленивых. вот был у клиента код с перспективной камерой, и он такой: а замути-ка мне тут тоггл камеры с перспективной на ортографическую и обратно, да так, чтобы ничего не сломалось. камера эта используется в 20 разных местах, причём не через something.camera, а через прямую ссылку на camera, переданную в конструктор. и вот, эти передачи в конструкторы происходят всего в 3х местах одного и того же файла, версус 20 мест в нескольких файлах — я ебал столько рефакторить на фиксед прайсе, конечно. а вот прокси позволяет элегантно отделаться от проблемы, передав его вместо камеры в тех трёх местах.
lurker
JS $ npm i
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: 'intrapac-map@0.1.0',
npm WARN EBADENGINE required: { node: '14.x', npm: '6.13.7' },
npm WARN EBADENGINE current: { node: 'v16.13.1', npm: '8.3.0' }
npm WARN EBADENGINE }

ну, извинииите....
lurker
code JS
// кандидат на самый бесполезный код месяца:
  window.beforeunload = () => {
    im.delete();
    imagePoints.delete();
    distCoeffs.delete();
    rvec.delete();
    tvec.delete();
    pointZ.delete();
    pointY.delete();
    pointX.delete();
    noseEndPoint2DZ.delete();
    nose_end_point2DY.delete();
    nose_end_point2DX.delete();
    jaco.delete();
  };
lurker
JS опять эта хуйня cv::solvePnP, при попытке протащить через вебпак — FATAL ERROR: Reached heap limit Allocation failed — JavaScript heap out of memory. надо как-то через index.html подключить
lurker
JS наговнокодил недавно такое, не покидает ощущение, что можно лучше, но не знаю как. цикл лепить не вариант — и больше лишних букв, и опять же [0] в цикле выглядит как опечатка.

lurker
JS зачем мне typescript, если мои ошибки выглядят так:

Error: ENOENT: no such file or directory, open 'data/lights.jsom'
at Object.openSync (node:fs:585:3)
at Object.readFileSync (node:fs:453:35)
at loadLights ...
lurker
JS на чистой винде npm install жалуется, что питона нет. ладно, поставил blender и набрал npm i --python="C:\Program files\Blender Foundation\Blender\2.79\python\bin\python.exe"

результат?

Error: Could not find any Visual Studio installation to use

это сколько ему всего надо, чтобы собрать сраный пакет. и как бы найти версию с бинарниками?