docs/dev-guide/generator-api.md
Type: string
The version string for the global @vue/cli version that is invoking the plugin.
Arguments
{integer | string} range - a semver range that @vue/cli needs to satisfyUsage
While api.version can be useful in general, it's sometimes nice to just declare your version. This API exposes a simple way to do that.
Nothing happens if the provided version is satisfied. Otherwise, an error will be thrown.
Type: string
The version string for the project local @vue/cli-service version that is invoking the plugin.
Arguments
{integer | string} range - a semver range that @vue/cli-service needs to satisfyUsage
This API exposes a simple way to declare the required project local @vue/cli-service version.
Nothing happens if the provided version is satisfied. Otherwise, an error will be thrown.
Note: It's recommended to use the peerDependencies field in package.json under most circumstances.
Arguments
{string} ..._paths - A sequence of relative paths or path segmentsReturns
{string}- the resolved absolute path, caculated based on the current project rootUsage: Resolve a path for the current project
Arguments
{string} id - plugin id, can omit the (@vue/|vue-|@scope/vue)-cli-plugin- prefix{string} version - semver version range, optionalReturns
{boolean}Usage: Check if the project has a plugin with given id. If version range is given, then the plugin version should satisfy it
Arguments
{string} key - config key in package.json{object} options - options{object} options.file - file descriptor. Used to search for existing file. Each key is a file type (possible values: ['js', 'json', 'yaml', 'lines']). The value is a list of filenames.
Example:{
js: ['.eslintrc.js'],
json: ['.eslintrc.json', '.eslintrc']
}
By default, the first filename will be used to create the config file.
Returns
{boolean}Usage: Configure how config files are extracted.
Arguments
{object | () => object} fields - fields to mergeUsage:
Extend the package.json of the project. Nested fields are deep-merged unless { merge: false } is passed. Also resolves dependency conflicts between plugins. Tool configuration fields may be extracted into standalone files before files are written to disk.
Arguments
{string | object | FileMiddleware} source - can be one of
{ sourceTemplate: targetFile } mappings;{object} [additionalData] - additional data available to templates{object} [ejsOptions] - options for ejsUsage: Render template files into the virtual files tree object.
Arguments
{FileMiddleware} cb - file middlewareUsage: Push a file middleware that will be applied after all normal file middlewares have been applied.
Arguments
{function} cbUsage: Push a callback to be called when the files have been written to disk.
Arguments
{} msg - string or value to print after the generation is completed;{('log'|'info'|'done'|'warn'|'error')} [type='log'] - type of the message.Usage: Add a message to be printed when the generator exits (after any other standard messages).
Arguments
{any} valueUsage: Convenience method for generating a JS config file from JSON
Arguments
{any} str - JS expression as a stringUsage: Turns a string expression into executable JS for .js config files
Arguments
{string} file - target file to add imports{string | [string]} imports - imports string/arrayUsage: Add import statements to a file.
Arguments
{string} file - target file to add options{string | [string]} options - options string/arrayUsage:
Add options to the root Vue instance (detected by new Vue).
Returns
{('src/main.ts'|'src/main.js')}Usage: Get the entry file taking into account typescript.
Returns
{boolean}Usage: Checks if the plugin is being invoked.