Подтвердить что ты не робот

Нокаут JS с альтернативным DOM Backend

Я хотел бы реализовать другой не-HTML-DOM-сервер для Knockout JS, вероятно, в среде без браузера (скорее всего, Node.js). В частности, существует старая, простая, статическая структура пользовательского интерфейса, которую я хотел бы обернуть DOM, а затем использовать с Knockout. Я понимаю, что сам Knockout, по крайней мере, способен работать в Node.js без среды браузера (например, здесь здесь) Мне интересно, что мне нужно реализовать, чтобы создать совершенно другую DOM.

  • Это что-то, где я могу переопределить несколько классов манипуляции DOM с моими собственными реализациями?
  • Есть ли какое-либо понятие интерфейса DOM?
  • Или мне, вероятно, понадобится сделать что-то с нуля с помощью альтернативного ko.applyBindings и т.д.?

Я просто пытаюсь выяснить, в основном ли я сумасшедший или совершенно сумасшедший в отношении объема работы.

4b9b3361

Ответ 1

Я думаю, вы могли бы сделать это, создав пользовательские элементы (http://knockoutjs.com/documentation/component-custom-elements.html) с пользовательскими привязками (http://knockoutjs.com/documentation/custom-bindings-for-virtual-elements.html) и расширение синтаксиса привязки (http://knockoutjs.com/documentation/binding-preprocessing.html)

Тогда вам, вероятно, придется создать элемент клиента, привязку и синтаксис для каждого элемента вашего пользовательского интерфейса, я бы предложил создать либо json файл с информацией о элементе, либо создать пользовательские элементы, созданные с помощью json, с помощью json linking к виджету, содержащему логику для каждого элемента.

Ответ 2

Я думаю, что jsdom - ваша лучшая отправная точка.