使用ES6模块,页面上已有import
标签的<script>
模块是否有当前方法或管道中的方法?例如,如果我有2个<script>
标签,
<script id="a">
export const a = 'a';
</script>
<script id="b">
import a from ?;
console.log(a);
</script>
我在第二个import
代码中添加<script>
语句代替问号?
id
属性用于识别目的,因为显然需要某种方法来识别您需要的<script>
标记。它可以通过类或任何其他方式完成,但ID必须是唯一的(尽管许多浏览器只使用带有id
的最后一个标记),所以我认为这是确保您拥有正确标记的好方法。也可以通过在文档中按位置获取<script>
标记来完成:例如,在这里你得到第二个脚本标记,所以也许你可以做类似的事情
import a from window.scripts[1];
还有一件事:如果这可以在HTML导入中起作用,那也会很棒。我最初的目的是在站点的不同页面上重用React组件,在那里它们可能无法通过相对路径导入,并且至少在Webpack中,绝对路径并不总是相对于服务器的根目录:有时它们相对于计算机的根目录,或者至少是网络服务器的根目录。
如何直接从页面上的其他<script>
标记导入值?