microsoft / microsoft/react-native-windows
Enable MSBuild Bundle props/targets to support multiple bundles
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 17.3k
- Forks
- 1.2k
- Avg merge
- 1d 13h
- Merged PRs (30d)
- 33
Description
Summary
Right now out props/targets for defining and building the JS bundle assumes that each app only has one bundle. However, we have a case within our own native integration test projects where we generate multiple bundles via defining multiple <JsBundleEntry> items, and multiple bundles are created via a custom bundle target with multiple inputs.
Instead we should standardize our props/targets on that, even if most apps only have one bundle entry.
Motivation
Rather than have this useful logic hidden within our test code, we could share it for app projects that require more than one bundle. While the default template should only set up one entry (pointing at the standard index.windows.js entry file) it would make it a lot easier for app devs to just add new entries in their project and end up with more bundles as part of their build.
Basic Example
No response
Open Questions
No response
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the existing props/targets for defining and building JS bundles, then compare them with the custom bundle target used by the native integration test projects. Trace how multiple JsBundleEntry items and inputs are handled. Done means app projects can define multiple entries and produce multiple bundles, while the default template still uses one index.windows.js entry.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, javascript, react-native
- Domain
- build-system
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100