Я настоятельно рекомендую включить режим разработки AMP, добавив #development=1
к URL.
Относительные URL не допускаются в атрибуте sr c тега amp-script
(параметр разработки сказал бы вам об этом).
Вы можете иметь что-то вроде этого:
<amp-script width="1" height="1" script="demo"></amp-script>
<script type="text/plain" target="amp-script" id="demo">
console.log('Foobar');
</script>
Но вам понадобится соответствующий ha sh в метатеге в вашей голове:
<head>
...
<meta
name="amp-script-src"
content="sha384-hash"
/>
</head>
Опять же, параметр развития сообщит вам ha sh вы должны использовать, хотя вы также можете отключить проверки ha sh во время разработки.
Все вышеперечисленное по-прежнему не приведет к увлажнению вашего элемента amp-script. Для того чтобы ваш элемент был увлажнен, скрипт должен фактически что-то связать с DOM, как, например, добавить div при нажатии кнопки:
<amp-script layout="container" script="demo">
<button id="hello">Add headline</button>
</amp-script>
<script type="text/plain" target="amp-script" id="demo">
console.log('Foobar');
const button = document.getElementById('hello');
button.addEventListener('click', () => {
const h1 = document.createElement('h1');
h1.textContent = 'Hello World!';
document.body.appendChild(h1);
});
</script>
Имейте в виду, что вы весьма ограничены тем, что вы разрешено делать. Например, приведенный выше фрагмент не будет работать без прослушивателя событий, поэтому вы не можете просто добавить элемент без взаимодействия с пользователем.
Сообщения, касающиеся ссылок, можно смело игнорировать - примеры AMP точно так же действуют, AMP все еще проходит проверку.