angular2-example icon indicating copy to clipboard operation
angular2-example copied to clipboard

Unable to use Components' `templateUrl` property

Open indrimuska opened this issue 8 years ago • 5 comments

Hi Guys,

I've just tried fuse-box and it's just unbelievably fast! Nothing compared with the tons configuration I've write to run webpack or systemjs in a simple "hello world" project. And this project also helped me a lot to start working with fuse-box.

I was wondering if there's a way (or a plugin) to use Angular2 Components' templateUrl property instead of just requiring the template and push it in the code. Basically I would like to avoid calling the require function and just write the url of my template. This is more annoying when you have an array of css to include (using RawPlugin for css files).

Current usage Preferred usage
@Component({
  selector: 'app',
  template: require('./app.component.html')
  styles: [ require('./app.component.css') ]
}
@Component({
  selector: 'app',
  templateUrl: './app.component.html'
  styleUrls: [ './app.component.css' ]
}

Anyway, the result should be the same for both usage, so the template content will be pushed in the bundle itself. But, since this feature is already available in webpack/systemjs, do you mind it will be also for fuse-box? Maybe "overriding" (decorating), if possibile, the decorator implementation?

Thank you :)

indrimuska avatar Feb 18 '17 17:02 indrimuska

@indrimuska thanks a lot for te awesome words :) yea Fuse is aiming to make your life drastically better! we have great Decorator and metadata support.

if you check this article https://medium.com/fusebox/webpack-is-not-the-only-way-6ddb67e99be9#.1bmgfywgq, especially the Extended metadata properties part, you would see how we can achieve some magic that may solve your issue or inspire you to create better solution

devmondo avatar Feb 20 '17 12:02 devmondo

Thank you @devmondo. What are your thought about this feature? Do you think such solution could be feasible?

indrimuska avatar Feb 21 '17 22:02 indrimuska

@indrimuska yes it's feasible. However, it requires a custom plugin that would regenerate the code

nchanged avatar Feb 21 '17 23:02 nchanged

I just published a fuse-box plugin that will handle this scenario if you are interested... https://github.com/alex-klock/ng2-fused

alex-klock avatar Apr 06 '17 18:04 alex-klock

Good @alex-klock, it looks very promising! I'll take a look at that! 👍

indrimuska avatar Apr 06 '17 18:04 indrimuska