错误详情:
AppComponent_Host.html:1 ERROR Error: The selector "my-app" did not match any elements
at DefaultDomRenderer2.webpackJsonp.../../../platform-browser/@angular/platform-browser.es5.js.DefaultDomRenderer2.selectRootElement (platform-browser.es5.js:2791)
at DebugRenderer2.webpackJsonp.../../../core/@angular/core.es5.js.DebugRenderer2.selectRootElement (core.es5.js:13650)
at createElement (core.es5.js:9178)
at createViewNodes (core.es5.js:12163)
at createRootView (core.es5.js:12092)
at callWithDebugContext (core.es5.js:13475)
at Object.debugCreateRootView [as createRootView] (core.es5.js:12792)
at ComponentFactory_.webpackJsonp.../../../core/@angular/core.es5.js.ComponentFactory_.create (core.es5.js:9864)
at ComponentFactoryBoundToModule.webpackJsonp.../../../core/@angular/core.es5.js.ComponentFactoryBoundToModule.create (core.es5.js:3333)
at ApplicationRef_.webpackJsonp.../../../core/@angular/core.es5.js.ApplicationRef_.bootstrap (core.es5.js:4768)
解决回顾
因为是自己按照官网教程敲的,可能没有理解或者有些格式没有注意到,于是将官网的源码粘了下来,结果还是报错.
然后通过询问比较熟悉的小伙伴,测试比对发现根组件也就是index里面的selector选择的名称为
selector:'app-root'
而默认的component里面的selector选择器的名称为
selector:'my-app'
名称改一致了就可以了,不过有两个疑问,为什么在教程中没有提及这点,官网例子却能正常运行,后来看了一下源码,已经改成了my-app,这个并不是默认的app-root,这对新手来说是个坑啊
这个问题是到路由这块转化视图的时候才有的,于是猜想这个根选择器应该是有一定作用域的,不过正常的一个项目肯定是需要各种视图之间的跳转的