Jac*_*kie 6 javascript rollup node.js ecmascript-6 vue.js
我正在使用 Vuetify1.5.18
并具有以下代码...
import Vuetify from 'vuetify'
...
// rollup config
import VuePlugin from 'rollup-plugin-vue';
import css from 'rollup-plugin-css-only';
import resolve from 'rollup-plugin-node-resolve';
import commonjs from 'rollup-plugin-commonjs';
import pkg from './package.json';
// const external = Object.keys(pkg.dependencies);
const plugins = [
resolve({
module: true,
main: true
}),
commonjs(),
VuePlugin(),
css()
];
module.exports = {
plugins,
input: 'src/index.js',
output: {
file: 'dist/index.js',
format: 'esm'
}
};
Run Code Online (Sandbox Code Playgroud)
但是当我运行rollup时,我在输出中得到以下内容...
import vue from 'vue';
Run Code Online (Sandbox Code Playgroud)
当我尝试运行时,出现以下错误...
无法解析模块说明符“vue”。相对引用必须以“/”、“./”或“../”开头。`
我不是在 UI 项目中而是在我的服务器中像这样加载 Vue...
// Footer.pug
script(type="module")
| import Vue from '/vue/vue.esm.browser.js'
| const global = window || global;
| global.Vue = Vue;
Run Code Online (Sandbox Code Playgroud)
所以那条线不应该在那里。如果我删除 Vuetify,它就会消失。此外,如果我指向我通过 Koa 应用程序托管的版本,则...
import * as Vuetify from '/vuetify/vuetify.js';
Run Code Online (Sandbox Code Playgroud)
一切似乎也都有效。我也可以进入并手动删除import Vuetify from 'vuetify'
并将此行添加到服务器上的模板中...
| const global = window || global;
| global.vue = global.Vue;
Run Code Online (Sandbox Code Playgroud)
有没有办法告诉 rollup 忽略任何“vue”导入?