angular - "Kan inte läsa URL:en" fel för angular2 dynamiska komponenter med templateUrl
Försökte modifiera lösningen härifrån. Det fungerar bra, men om du ändrar template till templateUrl i komponenten, som borde laddas dynamiskt, får du ett fel: "No ResourceLoader implementation has been provided. Can't read the url ...".
@Component({
selector: 'string-editor',
templateUrl: 'app/parts/string.html', //using template URL instead of inline template here
})
export class StringEditor { ... }
Live-exempel på Plunker. Några idéer på hur man fixar detta?
Svar #1
Använd inte COMPILER_PROVIDERS, eftersom det åsidosätter ResourceLoader.
För dynamisk laddning, använd Compiler från core-paketet (vilket faktiskt är samma som RuntimeCompiler):
@Inject(Compiler) protected compiler: Compiler
och lägg till ApplicationModule som import i din modul:
imports: [
ApplicationModule,
BrowserModule,
DynamicModule.forRoot() // singletons
],
Plunker
