我有一个文件组件,我需要导入Vue:
<script lang="ts">
import Vue from 'vue'
import Component from 'vue-class-component'
...
@Component({...})
export class Comp extends Vue {...}我在浏览器中将vue.js作为模块导入:
<script type="module" src="module/vue/vue.js"></script>但我明白错误
Uncaught TypeError: Class extends value undefined is not a constructor or null在eval()中vue-cli-service --target lib生成的某个位置。我也把证监会作为一个模块来加载:
<script type="module" src="module/comp/comp.js"></script>作为解决办法,我尝试在comp.js顶部添加导入
import Vue from '/module/vue/vue.js'
import Component from '/module/vue-class-component/vue-class-component.js'
(function webpackUniversalModuleDefinition(root, factory) {
...但这没什么用。
如何将导入重新连接到将在web服务器上使用的路径?我检查了webpack的选择,但只找到了resolve,这似乎可以帮助webpack在包装时找到东西。我需要一个“输出重写”的选项。
注意,我使用的是ES模块,而不是CommonJS或RequireJS。tsconfig.json:
compilerOptions: {"target": "ES2016", module: "ES2015" } Update I尝试将最终路径放入.vue文件,并使用vue.config.js中的configureWebpack.resolve.alias来允许Vue编译器定位模块,但这也不起作用。
vue.config.js
module.exports = {
runtimeCompiler: true,
configureWebpack: {
externals: [
'module/vue/vue',
'module/vue-class-component/vue-class-component',
],
resolve: {
alias: {
'module/vue/vue': 'vue/dist/vue.esm.js',
'module/vue-class-component/vue-class-component': 'vue-class-component/dist/vue-class-component.esm.js'
}
},
}
}comp.vue
...
import Vue from './module/vue/vue'
import Component from 'module/vue-class-component/vue-class-component'只给
ERROR in .../src/comp.vue
16:17 Cannot find module 'module/vue/vue'.发布于 2019-09-25 15:11:01
概述
您可以在configureWebpack中添加vue.config.js来修改Webpack的配置,而Webpack则可以使用externals解决这个问题。
处理外部
外部提供了一种导入外部库的方法。
在webpack的配置中,您将添加一条类似于此的行。
让我们以lodash为例,因为导入和全局变量是不同的。
// webpack.config
externals: {
'lodash': '_'
}_是webpack可以抓住的全局变量,lodash是它公开的导入。
在这一点上,你可以这样做。
import * as lodash from 'lodash'处理TypeChecking
要使用此方法处理类型检查,npm install @types/...和TypeScript将获取该导入的类型。
Webpack在vue.config.js中的修改
您可以阅读此这里,但只需将以下内容添加到vue.config.js文件中即可。
// vue.config.js
module.exports = {
configureWebpack: {
externals: {
'lodash': '_'
}
}
}https://stackoverflow.com/questions/57971988
复制相似问题