gpt4 book ai didi

javascript - 从全局浏览器范围访问 CommonJS 库中定义的变量

转载 作者:行者123 更新时间:2023-11-30 16:38:38 26 4
gpt4 key购买 nike

我有一个“browserified”库,它定义了一些 React 组件,我想从 HTML 页面(从 Rails 应用程序提供服务)加载这些组件,然后实例化 React 组件,由放置在页面内的一些数据提供导轨。

(大图是:我们有一个 TurboLinks 应用程序,我们想为非常具体的部分使用一些 React 组件,需要更多的 react 性。
Rails 页面将加载 React 运行时和需要应用组件库,然后生成最小的原始 JS 以根据需要实例化 React 组件)

我找到的所有方法都是将外部库变量公开给我的 库,但我想将我的 变量公开给全局浏览器范围.

我最终以一种相当丑陋的方式 (window.Stuff = Stuff;) 直接从 .jsx 源文件中导出类,但我觉得这样代码有异味...

关于实现此类目标的更好方法有什么建议吗?

最佳答案

要么公开你的 browserify 包中的模块,例如:

browserify()
.require('./whatever', {expose: 'whatever'})

然后从 Rails 页面 JS:

require('whatever');

或者:

像这样创建一个独立的 browserify 包:

browserify('./entry', {standalone: 'something'})

entry.js

module.exports = {
whatever: require('./whatever')
};

然后从 Rails 页面 JS:

window.something.whatever;

关于javascript - 从全局浏览器范围访问 CommonJS 库中定义的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32333896/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com