What to put in vue scaffolding public
Generally, some static resources (pictures) are placed in the public folder. When webpack is packaging, they will be packaged intact into the dist folder. Files in the public directory will not be processed by Webpack, they will be copied directly to the final packaging directory (the default is dist/static); these files must be referenced using absolute paths, which depends on your "vue.config.js" In the configuration of publicPath, the default is "/".
The operating environment of this tutorial: windows7 system, vue3 version, DELL G3 computer.
1. Install Vue scaffolding
1. The first step (only executed for the first time): Global installation @vue/cli
npm i @vue/cli -g
2 , switch to the directory where you want to create the project, and then create the project
vue create XXX
3. Start the project
npm run serve
Notes:
1. npm Taobao mirror address
npm config set registry https://registry.npm.taobao.org
2. Vue scaffolding hides all webpack related configurations. If you want to view and execute
vue inspect > output.js
2. Purpose of each folder of the vue-cli scaffolding initialization project
node_modules folder:Project dependency folder
public folder:
Generally place some static resources (pictures). It is worth noting that static resources placed in the public folder will be packaged intact into the dist folder when webpack packages them.
Any static resources placed in the public folder will be simply copied without going through webpack. You need to reference them via absolute paths.
Note that we recommend importing resources as part of your module dependency graph so that they will be processed by webpack and gain the following benefits:
- Scripts and stylesheets will be compressed and Packed together to avoid additional network requests.
- If a file is lost, an error will be reported directly during compilation, instead of a 404 error being generated on the user side.
- The final generated file names include the content hash, so you don’t have to worry about browsers caching older versions of them.
The public directory provides a workaround. When you reference it via an absolute path, pay attention to where the application will be deployed. If your application is not deployed at the root of the domain, then you need to configure the publicPath prefix for your URL:
- in public/index.html or other via html-webpack- In the HTML file that plugin is used as a template, you need to set the link prefix by
<%= BASE_URL %>:
<link rel="icon" href="<%= BASE_URL %>favicon.ico">
- In the template, you first need to set the link prefix to your The component passes in the base URL:
data () { return { publicPath: process.env.BASE_URL } }
Then:
<img :src="`${publicPath}my-image.png`">
When to use the public folder
- You need to specify a file in the build output name.
- You have thousands of images and need to dynamically reference their paths.
- Some libraries may be incompatible with webpack. In this case, in addition to using a separate one,
vue-cli3.0 has two directories for placing static resources: public and assets.
public places files that will not change (equivalent to static in vue-cli2.x)
Files in the public/ directory will not be processed by Webpack: they will be processed directly is copied to the final packaging directory (default is dist/static). These files must be referenced using absolute paths. This depends on the publicPath configuration in your vue.config.js. The default is /.
assets put files that may change
The files in the assets directory will be processed and parsed into module dependencies by webpack, and only relative path forms are supported.
To put it simply, public places other people’s js files (that is, they will not change), and assets puts the js files written by yourself (files that need to be changed)
src folder
## The assets folder: generally used to store static resources (static resources shared by multiple components), it is worth noting that it is placed in the assets file When webpack packages the static resources in the folder, webpack will treat the static resources as a module and package them into JS files. The components folder: generally places non-routing components (global components) App.vue: the only root component (summary of all components) main.js: entry file , is also the first file to be executed in the entire program .gitignore: Configuration ignored by git version control (generally not touched) babel.config.js: babel’s configuration file (equivalent to translation Official, for example, translating ES6 related grammar into ES5, which has better compatibility and is generally not touched)package.json: Application package configuration file (similar to a project ID card, recording project name, project dependencies, project running and other information)
package-lock.json: package version control file (cacheability File)
README.md: Application description file (descriptive file)
vue.config.js: Scaffolding can be customized. For how to configure it, please refer to Vue CLI
Other folders:
pages folder: stores routing related components (pages can also be replaced by views)
router folder: routing configuration file
store folder: vuex related files
mock folder: stores mock simulation data
3. Scaffolding working environment
vue-cli scaffolding environment: based on node webpackTo support us in writing vue projects
Default entry file main.js: All codes must have a direct or indirect introduction relationship with main.js
Packaging process: Execute packaging At this time, webpack will build a code map based on the introduction relationship of the entrance, translate the relevant code with a loader/plug-in, output it to a .js file, and insert it into index.html to run
① main.js → Package and run entrance
② Vue.component("component name", component object) → Register a global component for Vue
Execution sequence: first register the global component through the main.js file, and then This global component is used within the component
[Related recommendations: vuejs video tutorial, web front-end development]
The above is the detailed content of What to put in vue scaffolding public. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics











Using Bootstrap in Vue.js is divided into five steps: Install Bootstrap. Import Bootstrap in main.js. Use the Bootstrap component directly in the template. Optional: Custom style. Optional: Use plug-ins.

You can add a function to the Vue button by binding the button in the HTML template to a method. Define the method and write function logic in the Vue instance.

The watch option in Vue.js allows developers to listen for changes in specific data. When the data changes, watch triggers a callback function to perform update views or other tasks. Its configuration options include immediate, which specifies whether to execute a callback immediately, and deep, which specifies whether to recursively listen to changes to objects or arrays.

Vue.js has four methods to return to the previous page: $router.go(-1)$router.back() uses <router-link to="/" component window.history.back(), and the method selection depends on the scene.

Vue multi-page development is a way to build applications using the Vue.js framework, where the application is divided into separate pages: Code Maintenance: Splitting the application into multiple pages can make the code easier to manage and maintain. Modularity: Each page can be used as a separate module for easy reuse and replacement. Simple routing: Navigation between pages can be managed through simple routing configuration. SEO Optimization: Each page has its own URL, which helps SEO.

Netflixusesacustomframeworkcalled"Gibbon"builtonReact,notReactorVuedirectly.1)TeamExperience:Choosebasedonfamiliarity.2)ProjectComplexity:Vueforsimplerprojects,Reactforcomplexones.3)CustomizationNeeds:Reactoffersmoreflexibility.4)Ecosystema

There are three ways to refer to JS files in Vue.js: directly specify the path using the <script> tag;; dynamic import using the mounted() lifecycle hook; and importing through the Vuex state management library.

There are three common methods for Vue.js to traverse arrays and objects: the v-for directive is used to traverse each element and render templates; the v-bind directive can be used with v-for to dynamically set attribute values for each element; and the .map method can convert array elements into new arrays.
