Существуют ли решения для удаления доступа к Element.querySelector и другим методам доступа к dom? - PullRequest
0 голосов
/ 22 октября 2018

Я ищу решение, предотвращающее доступ к dom вне родительского элемента o fscoped javascript code.

Есть ли какое-либо решение, чтобы подключить все методы доступа к dom, как, например, мы можем подключить консольные методы илиизменить корневой элемент документа в зависимости от области действия.

Это должно быть просто, как var document = element и предотвращать доступ к глобальному элементу, но документ неизменен.

Есть ли какие-либо решения?

1 Ответ

0 голосов
/ 22 октября 2018

Одним из способов будет использование глобальной константы.

const DOM = document.getElementById('main');
...
DOM.getElementsByTagName('div');

Вы также можете переопределить все методы объекта документа (getElementById, getElementsByTagName).В этом случае обязательно позвоните super:

class myDocument extends Document{
    getDocumentById(value) {
      console.log(`Searching for ${value} inside 'main'. `)
      // If you want to remove access to theese functions simply comment out following line
      super.getDocumentById('main').getDocumentById(value)}    
}

var array = new newArray

array.push('new Value')

Где вы заменяете 'main' на id вашего компонента.

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