如何做一个引入不需要加路径的js模块, npm install 的模块一样,require('zepto.js')

  1. 如何做一个不用路径可以加载的js模块, 可以直接引入的,npm install 的模块一样,require('zepto.js')或 import vue from 'vue'

阅读 4k
3 个回答

不是特别清晰问题的初衷,猜测是想说:做到引入自定义 js 模块,使得可以不用加路径这样么?

如果是这样,给的建议是:你用了 vue,那么也当使用 webpack;可在 webpack 中,为项目中文件路径,设置别名来解决这个需求。如果自行配制 webpack 有些麻烦的话,可使用 vue-cli ,她已经为此定制好几乎所有,直接用即可。

resolve: {
  extensions: ['.js', '.vue', '.json'],
  modules: [
    resolve('src'),
    resolve('node_modules')
  ],
  alias: {
    'vue$': 'vue/dist/vue.common.js',
    'src': resolve('src'),
    'assets': resolve('src/assets'),
    'components': resolve('src/components')
  }
}

如上配置,你可以在其中注入自定义的 js 模块,这样以来,即可做到,项目中直接引用即可,无须加路径。

├── node_modules
│   ├── xxx // xxx模块
│   │   ├── vue.js // 模块js
│   │   └── package.json // package.json里面main字段指定为模块js入口vue.js

随后便可以 require('xxx')import 'xxx' // 会解析为xxx/vue.js

tip: 将xxx文件及手动放在node_modules即可,package.json的必要字段要填,main指定入口文件

其实楼主说的功能非常像发布自己的包到npm上,然后就可以 npm install 自己的包,并随意 require了。

楼主可以搜索“npm发布自己的包”,很多教程,关键是:真的很简单

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题