第一种方法
resolve: { extensions: ['.js', '.vue', '.json'], alias: { 'vue$': 'vue/dist/vue.esm.js', '@': resolve('src') //<== 这里,具体可以看resolve方法内部 @符合就代表了 磁盘中src的绝对路径 } },
我在开发nuxtjs插件的时候遇到了问题,我并没有用webpack打包,也没有引用第三方包,是自己写的方法引入。
有可能nuxtjs加载模块的时候,是把plugin加载到虚拟文件夹,所以相对路径是找到方法的,试过,用绝对路径是没有问题的,但是我们发布出去包,用写死的绝对路径是不可以的,所以我们要动态获得绝对路径,下面是方法
<%= options.uniqueSchemes.map(path =>${+ hash(path)}${path.replace()}).join() %>
类似上面,<%= js模板的写法,可以参考本网站更多文章,path,我们可以用__dirname,不过要替换下,不然是一串字符串,还是会包找不到模块的错误。