将外部库导入javascript文件

时间:2017-08-15 07:28:40

标签: javascript npm npm-install

更新

我已经购买了一个名为filePicker的插件,我想在其中一个vue.js组件中使用。

当我尝试以这种方式导入其库时

<script>
    import {filepicker} from '../filepicker';
    import {filepickerdrop} from '../filepicker-drop';
</script>

当我在此之后第一次运行npm run dev时,它要求安装此库

npm install --save filepicker

当我第二次尝试npm run dev时,它要求这个

npm install --save fs net tls

我做了第3次npm run dev,它问我这个

npm install --save fs
  

找不到此依赖项:./node_modules/request/lib/har.js中的* fs

问题:它一直要我安装这个fs库。

这些安装已将package.json更新为此

"dependencies": {
    "filepicker": "^0.2.0",
    "fs": "0.0.1-security",
    "net": "^1.0.2",
    "tls": "0.0.1"
}

这表明已成功安装库FilePicker,但无法找到它所使用的库fs-security

https://www.npmjs.com/package/fs提及&#34;此包名称目前尚未使用。&#34;这是什么意思?

LakiGeri建议根据此post在本地安装FilePicker。上面的错误显示fs是需要安装的人。我没有这个库来安装它。 LakiGeri还建议遵循doc specifications。我甚至无法导入其库,因此甚至可以开始处理其配置。 第三个建议是手动更新package.json文件中的依赖项。它已经更新。

我还在npm github repo上打开了一个问题。我仍然没有反馈。

2 个答案:

答案 0 :(得分:2)

插件作者刚刚回复并更新了他的sittings。 使用以下内容在webpack.mix.js中添加以下内容:

const path = require('path')

mix.webpackConfig({
    resolve: {
        alias: {
            'filepicker': path.join(__dirname, './resources/assets/js/vendor/filepicker'),
            'filepicker-ui': path.join(__dirname, './resources/assets/js/vendor/filepicker-ui'),
            'filepicker-drop': path.join(__dirname, './resources/assets/js/vendor/filepicker-drop'),
            'filepicker-crop': path.join(__dirname, './resources/assets/js/vendor/filepicker-crop'),
            'filepicker-camera': path.join(__dirname, './resources/assets/js/vendor/filepicker-camera'),
        }
    }
});

现在您可以像这样导入Filepicker文件:

import 'filepicker';
import 'filepicker-ui';
import 'filepicker-drop';
import 'filepicker-crop';
import 'filepicker-camera';

现在可行。

非常感谢LakiGeri成为唯一帮助的人。

答案 1 :(得分:1)

我运行了一些搜索,并且npmjs.com上没有这个filepicker包的js lib。但您可以从本地安装lib(请查看此answer),或者您可以在package.json this中添加lib的路径。导入之后,我认为你什么都不做,但是如果它不起作用,你必须将这个lib作为其文档says

我希望它有所帮助!