MLy*_*yck 5 javascript facebook rollup node.js vite
我正在尝试在我的应用程序中设置“使用 facebook 登录”功能。
一切都在本地运行良好,或者如果我不缩小我的包。
然而,当我缩小捆绑输出时,有一个全局函数恰好被缩小为FB( window.FB),这完全破坏了 facebook SDK。
Facebook 不提供任何使用任何其他变量名称的方法。因此,我试图弄清楚如何“保留”或防止我的捆绑程序 viteJS / Rollup 将另一个全局函数名称缩小为FB.
正在缩小的全局函数来自 nodejs,并且可能是通过某个 npm 包导入的,但我不确定是哪一个。(即使我能找到它,我使用它也是有原因的,并且可能没有好的替代方案)。
这是保存在全局窗口上并缩小为“FB”的随机nodejs函数: https ://github.com/nodejs/node/blob/4b6e4c1eb110e0be671ec5972bf280d2bf3892d8/lib/_stream_read.js#L497
如何防止window.FB全局变量名被该函数占用?(当然要打开 minify)。
我尝试设置build.outputs.globals.FB为“TEST”,并window.FB在我的 index.ts 文件中进行定义,看看它是否会强制它不使用相同的名称进行缩小。但这似乎并不影响捆绑器。
小智 -1
在开发应该在另一个网站上使用的自定义库时,我设法在vite.config.js文件中实现了这种禁用缩小:
export default defineConfig({
plugins: [
// your plugins goes here...
],
build: {
minify: false, // <-- this is the important part
lib: {
entry: resolve(__dirname, 'src/index.tsx'),
name: 'my-lib',
fileName: 'lib-file',
formats: ['umd'] // <-- I used 'umd' here as a precaution measure, to make it possible to use the lib in every browser
}
}
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1696 次 |
| 最近记录: |