GithubHelp home page GithubHelp logo

lynzz / vue-cli-plugin-dll Goto Github PK

View Code? Open in Web Editor NEW

This project forked from fingerpan/vue-cli-plugin-dll

0.0 2.0 0.0 42 KB

@vue/cli 3 pulgin for pack vendor file with Dll and DllReference

License: MIT License

JavaScript 100.00%

vue-cli-plugin-dll's Introduction

vue-cli-plugin-dll vue-cli3 npm npm

Vue CLI 3 plugin for Dll and DllReference

English | 中文

⭐ TODO:

  • More injection mode options
  • add changeLog file
  • add util test

Getting started

make sure you have vue-cli 3.x.x

vue -V

Install

vue add dll 

# OR 

vue invoke dll

Quick Start

Simple configuration

you can config options of pluginOptions in vue.config.js:

// vue.config.js

 module.exports = {
    pluginOptions: {
        dll: {
            entry: ['vue', 'vue-route']
        }
    }
 }

Build Dll

npm run dll

#OR

npx vue-cli-service dll

Configuration

vue.config.js:

module.exports = {
  // Other options...

  pluginOptions: {
    dll: {
      // Enable DllReferencePlugin 
      open: true,
      // vonder entry
      entry: ''
      // chunk and manifest file dir
      output: ''
    }
  }
}

options

name type/value-set des default required
entry Object/Array/String vendor entry null true
open true/false/'auto' Enable DllReferencePlugin 'auto' false
output String chunk and manifest file dir 'yourProjectPath/public/dll' false
inject Boolean auto inject chunk true false

more Expamle

entry config

the entry can be configured via the pluginOptions in vue.config.js

module.exports = {
  // Other options...

  pluginOptions: {
      dll: {
           // Single entry
          entry: ['vue', 'axios'],

          // Multiple entry
          entry: {
            vendorNameOne: ['vue-route'],
            vendorNameTwo: ['vue-vuex'], 
         }
      }
   }
}

open config

add webpack.DllReferencePlugin

module.exports = {
  // Other options...

  pluginOptions: {
      dll: {
          entry: ['vue'],
          // only add webpack.DllReferencePlugin plugin in production model
          open: process.env.NODE_ENV === 'production', //         
      }
   }
}

inject config

auto inject vendor file by 'add-asset-html-webpack-plugin' plugin

module.exports = {
  // Other options...

  pluginOptions: {
      dll: {
        entry: ['vue'],
        // If you manually quote vendor file in 'index.html' file 
        inject: false
      }
   }
}

vue-cli-plugin-dll's People

Contributors

fingerpan avatar lynzz avatar teal-front avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.