Comments (7)
Why not dist/main/
dist/main-es/
dist/api/
dist/api-es/
?
from ncc.
I'd be down to discuss -f / --out-file
, but I think the idea that can you can treat a directory or a file the same (because the directory can resolve to /index.js
) is quite powerful
For example, I spent some time thinking how ncc
could use the CLI instead of the JS API for self-hosting.
- We'd rename
src/index.js
tosrc/main.js
- We'd make
cli.js
require (./main
). This is important, becausemain
written like that can resolve to both dir and file - Then we'd export like this:
ncc build src/main -o dist/main
ncc build src/cli -e './main' -o dist/cli
-e
is necessary to avoid the CLI bundling the whole thing. Done!
from ncc.
You should use dist/api
and when you require
don't use the .js
suffix, so that you can support both situations (file or directory with index.js
)
This is by design, because some Node programs need to output more side-effects
from ncc.
That said, we could support --out dist/api.js --single
, which would err if >1 outputs, and give you what you want. But is it really that necessary?
from ncc.
Why not just support --out-dir
and --out-file
?
The -o
/ --output
is usually a flag that allows making output file.
edit: Also, i need to have more than one file in that api
directory, or even build multiple things to the dist
one.
from ncc.
Currently, I'm using Rollup and the dist structure is the following
dist/index.js
dist/index-es.js
dist/api/index.js
dist/api/index-es.js
Where, the index.js
s should be able to load in the browser and index-es
are always using ES modules.
from ncc.
Hm. Maybe.
from ncc.
Related Issues (20)
- Cannot bundle `@npmcli/arborist` HOT 3
- ESM mode still uses "require" within an ESM module HOT 6
- Java
- Confusing error message "Package path . is not exported from package" HOT 2
- Are there multiple js files in the directory packaged by NCC? HOT 2
- vercel/ncc
- Advantages over other bundlers HOT 4
- more documentation about `--v8-cache`
- ncc and prebuildify HOT 3
- TypeError when resolving symlinked module paths in a Lerna workspace
- 打包之后在linux系统下无法运行 HOT 2
- AssetBuilds repeatedly packages the same resources
- Why i got multiple js file, and Cannot find module './indexes' ? HOT 4
- Does ncc support dynamic required(path) of fs.readdir ?
- Outdated Terser causes a syntax issue when minify-ing code
- Unclear instructions to build ncc from source. HOT 1
- ncc randomly copies folders from repository to dist (path.join + process.cwd) HOT 2
- Error possibily related to bundling of import.meta.url
- ncc build error: see the description
- ncc pack and then pkg pack,got some error about node.path
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ncc.