2.7 KiB
2.7 KiB
vue
Which dist file to use?
From CDN or without a Bundler
-
vue(.runtime).global(.prod).js
:- For direct use via
<script src="...">
in the browser. Exposes theVue
global. - Note: global builds are not UMD builds. They are built as IIFEs and is only meant for direct use via
<script src>
. vue.global.js
: the "full" build that supports compiling templates on the fly.vue.runtime.global.js
: runtime only, does not include runtime template compilation support. Use this if you are not using a bundler, but somehow pre-compiling your template.
- For direct use via
-
vue.esm(.prod).js
:- For usage via native ES modules imports (in browser via
<script type="module">
, or via Node.js native ES modules support in the future) - Inlines all dependencies - i.e. it's a single ES module with no imports from other files
- this means you must import everything from this file nad this file only to ensure you are getting the same instance of code.
- Hard-coded prod/dev branches, and the prod build is pre-minified (you will need to use different files for dev/prod)
- For usage via native ES modules imports (in browser via
With a Bundler
vue(.runtime).esm-bundler.js
:- For use with bundlers like
webpack
,rollup
andparcel
. - Leaves prod/dev branches with
process.env.NODE_ENV
guards (must be replaced by bundler) - Does not ship minified builds (to be done together with the rest of the code after bundling)
- imports dependencies (e.g.
@vue/runtime-core
,@vue/runtime-compiler
)- imported depdencies are also
esm-bundler
builds and will in turn import their dependencies (e.g.@vue/runtime-core
imports@vue/reactivity
) - this means you can install/import these deps individually without ending up with different instances of these dependencies.
- imported depdencies are also
vue.runtime.esm-bundler.js
: runtime only, does not include runtime template compilation support. This is the default entry for bundlers (viamodule
field inpackage.json
) because when using a bundler templates are typically pre-compiled (e.g. in*.vue
files).vue.esm-bundler.js
: includes the runtime compiler. Use this if you are using a bundler but still want runtime template compilation (e.g. in-DOM templates or templates via inline JavaScript strings).
- For use with bundlers like
For Server-Side Rendering
vue.cjs(.prod).js
:- For use in Node.js server-side rendering via
require()
. - If you bundle your app with webpack with
target: 'node'
and properly externalizevue
, this is the build that will be loaded. - The dev/prod files are pre-built, but the appropriate file is automatically required based on
process.env.NODE_ENV
.
- For use in Node.js server-side rendering via