使用import() 按需引入时如何写绝对路径?

2019-12-11 15:28:34

第一种方法

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,不过要替换下,不然是一串字符串,还是会包找不到模块的错误。

  • 2019-09-28 00:03:21

    shiro的session共享,持久化

     shiro的session创建与session的查询、更新、过期、删除中,shiro对session的操作基本都讲到了,但还缺一个session共享没有讲解;session共享的原理其实在自定义session管理一文已经讲过了,本文不讲原理,只看看shiro的session共享的实现。

  • 2019-09-28 08:00:30

    Java.io.tmpdir介绍

    System.getproperty(“java.io.tmpdir”)是获取操作系统缓存的临时目录,不同操作系统的缓存临时目录不一样,

  • 2019-09-28 08:36:43

    Ehcache配置持久化到硬盘,只存储到硬盘

    Ehcache默认配置的话 为了提高效率,所以有一部分缓存是在内存中,然后达到配置的内存对象总量,则才根据策略持久化到硬盘中,这里是有一个问题的,假如系统突然中断运行 那内存中的那些缓存,直接被释放掉了,不能持久化到硬盘;这种数据丢失,对于一般项目是不会有影响的,但是对于我们的爬虫系统,我们是用来判断重复Url的,所以数据不能丢失;

  • 2019-09-28 09:33:18

    put与putIfAbsent区别

    put在放入数据时,如果放入数据的key已经存在与Map中,最后放入的数据会覆盖之前存在的数据, 而putIfAbsent在放入数据时,如果存在重复的key,那么putIfAbsent不会放入值。