请注意,我在这里使用的是教程代码,因此,并非所有内容都严格正确,但可以使用。大多数时候。
我有一个装饰如下的组件类:
@Component({
selector: "click-here",
template: `
<button (click) = "onClickThere($event)">Click here!</button>
{{clickMessage}}
`
})
它的用法是这样的:
<body>
<click-here>Loading...</click-here>
</body>
然后,我添加了一个新的组件类,但其装饰器具有:
selector: "type-here"
当我使用运行应用程序时npm start
,在浏览器中出现了大量错误,从以下内容开始:
The selector "click-here" did not match any elements
为什么每个选择器都必须匹配一个元素?这样的工作是不可行的。必须有一种方法能够拥有多个Component
装饰器,所有装饰器具有不同的selector
值,并且仅使用其中一些装饰器。我将如何实现?教程未包含正确版本的内容,这是我做错了什么?每个人Component
都必须有名字或其他名称吗?
这仅与您实例化的元素有关bootstrap(MyComponent)
。
如果您引导组件,但该组件与选择器不匹配,则Angular不知道应将其放置在何处。Angular使用选择器来查找将组件插入DOM的位置。
这也意味着您当前只能在页面内一次引导一个组件。有计划支持在传递组件时覆盖选择器,bootstrap()
但目前不支持此选择器。
另请参阅https://github.com/angular/angular/issues/7136
对于内部使用的组件,MyComponent
这无关紧要。您可以根据需要拥有任意数量的组件,并且仅使用所需的组件。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句