使用另一个脚本标记自定义从Angular 8创建的自定义元素javascript文件

使用另一个脚本标记自定义从Angular 8创建的自定义元素javascript文件,javascript,angular,angular8,custom-element,Javascript,Angular,Angular8,Custom Element,我正在使用Angular 8自定义元素创建一个嵌入小部件。我做了一个按钮,并在点击它时给出了一个函数。在构建我的项目之后,我得到了一个脚本文件,它可以放置在任何带有自定义元素标记的网站上 现在,我想使用脚本标记更改按钮的颜色。在将其放在原始脚本文件下时,不会更改颜色,因为页面已经加载 但是如果我把它放在代码上面,它仍然不工作,因为它给出了一个错误,按钮ID为空 var btn=document.getElementById('button'); btn.style.backgroundCo

我正在使用Angular 8自定义元素创建一个嵌入小部件。我做了一个按钮,并在点击它时给出了一个函数。在构建我的项目之后,我得到了一个脚本文件,它可以放置在任何带有自定义元素标记的网站上


现在,我想使用脚本标记更改按钮的颜色。在将其放在原始脚本文件下时,不会更改颜色,因为页面已经加载

但是如果我把它放在代码上面,它仍然不工作,因为它给出了一个错误,按钮ID为空


var btn=document.getElementById('button');
btn.style.backgroundColor=“#232323”;


var btn=document.getElementById('button');
btn.style.backgroundColor=“#232323”;
我甚至尝试在已经创建的主脚本文件中使用相同的代码。但它仍然没有到来


var Bd=Ur(“ng分量”,gu,$d,{},{},[]),qd=tr({
封装:3,
风格:[
[“#按钮{背景色:#000;}”]
],
数据:{}
});
这对我没用。请帮我解决这个问题

conv小部件的内容是:


conv小部件的CSS代码为:

#按钮{
背景色:rgb(193,0,61);
边界半径:50%;
高度:60px;
宽度:60px;
}
我正在尝试使用新的脚本标记更改按钮的颜色


如果看不到
的源代码,这将是一个暗中操作…当您从开发人员控制台执行
getElementById
和样式颜色时会发生什么?(或者在
setTimeout
中)我已经给出了源代码以及我得到的错误,你能帮我解决吗。如果
按钮
ng容器中
在shadowDOM中,那么任何
文档.xxx
调用都无法在shadowDOM内读取。一种解决方案是在
ng容器上添加一个方法,在shadowdom上设置读取的样式(内部),而不查看
的源代码。这将是一种暗中操作……当您从开发控制台执行
getElementById
和样式颜色时会发生什么?(或者在
setTimeout
中)我已经给出了源代码以及我得到的错误,你能帮我解决吗。如果
按钮
ng容器中
在shadowDOM中,那么任何
文档.xxx
调用都无法在shadowDOM内读取。一个解决方案是在
ng容器上添加一个方法来设置shadowDOM上的读取样式(内部)