Добавить атрибут "nomodule" динамически в - PullRequest
0 голосов
/ 01 февраля 2019

Я хочу динамически сгенерировать тег сценария следующим образом:.

для 'async' и 'defer'. Я знаю, что мы можем сделать следующее: мы можем сделать "s.async = true" или "s.defer = true "так же, как и следующие.

  function script(url) {
            var s = document.createElement('script');

            s.async = true;
            s.src = url; 
            console.log(s);
            var x = document.getElementsByTagName('head')[0];
            x.appendChild(s);
          }

, чтобы получить динамически сгенерированный тег типа <script async src="abc.com"></script>

Но для« nomodules »у меня не было желаемого результата.Я пытался сделать "s.nomodule = true", но безрезультатно.Я попытался сделать следующее.

 function script(url) {
            var s = document.createElement('script');

            s.nomodule = true;
            s.src = url; 
            console.log(s);
            var x = document.getElementsByTagName('head')[0];
            x.appendChild(s);
          }

, но получил только <script src="abc.com"></script>

Как я могу получить такой результат, как

<script nomodule src="abc.com"></script> динамически.

1 Ответ

0 голосов
/ 01 февраля 2019

Свойство называется noModule.В отличие от HTML, JavaScript чувствителен к регистру!

function script(url) {
    var s = document.createElement('script');

    s.noModule = true;
//      ^
    s.src = url; 
    console.log(s);
    var x = document.getElementsByTagName('head')[0];
    x.appendChild(s);
}

В качестве альтернативы, s.setAttribute("nomodule", "") также сработал бы.

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