将外部库导入 javascript 文件

Import an external library into a javascript file

更新

我已经购买了一个名为 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

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

npm install --save fs

This dependency was not found: * fs in ./node_modules/request/lib/har.js

问题: 它一直要求我安装这个 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提到"this package name is not currently in use."这是什么意思?

LakiGeri,建议按照这个post在本地安装FilePicker。上面的错误表明fs是需要安装的那个。而且我没有这个库来安装它。 LakiGeri也建议关注doc specifications。我什至无法导入它的库,所以如何开始处理它的配置。 第三个建议是手动更新 package.json 文件中的依赖项。已经更新了。

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

我运行搜索了一下,npmjs.com上没有这个filepicker包的js库。但是你可以从本地安装库(检查这个answer), or you can add the path of the lib in the package.json like this. After you imported it, I think you should do nothing, but if it will not work, you have to init this lib as its doc says

希望对您有所帮助!

插件作者刚刚回复并更新了他的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 是唯一的帮助。