如何解决Vibrant.js库未加载
我正在尝试使用js库,但无法连接它。 https://github.com/Vibrant-Colors/node-vibrant
使用node下载了dynamic.js。
js文件:var Vibrant = require(['node-vibrant']);
HTML文件(已添加此文件,以便我可以在上面要求):<script src="https://requirejs.org/docs/release/2.3.6/minified/require.js"></script>
我得到这些错误:
解决方法
这里有两件事。
第一个是require()
函数不会返回您需要的模块,而是异步运行的。因此,您将必须提供一个回调,该回调将在模块加载时执行:
require(['node-vibrant'],() => {
console.log('Vibrant is loaded');
});
第二件事是您的Web服务器不知道/node-vibrant
是什么,您必须提供完整的路径。正如评论中提到的那样,您可以使用CDN:
requirejs.config({
paths: {
'node-vibrant': 'https://cdnjs.cloudflare.com/ajax/libs/vibrant.js/1.0.0/Vibrant.min'
}
});
require(['node-vibrant'],() => {
console.log('Vibrant is loaded,you can do what you want with it');
console.log(window.Vibrant);
});
第三件事(可选)是为此脚本设置shim
,因为它不是AMD模块。它不会注入您的回调中,但是它将是一个全局变量。这可以解决:
requirejs.config({
paths: {
'node-vibrant': 'https://cdnjs.cloudflare.com/ajax/libs/vibrant.js/1.0.0/Vibrant.min'
},shim: {
'node-vibrant': {
'exports': 'Vibrant'
}
}
});
require(['node-vibrant'],(Vibrant) => {
console.log('Vibrant is loaded and injected,you can do what you want with it');
console.log(Vibrant);
});
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。