问题标签 [browserify-rails]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
511 浏览

javascript - 需要带有 Browserify 和 browserify-rails 的 sprockets 预处理文件

我正在使用browserify-rails并且我正在尝试让 sprockets 预处理包含 sprockets 指令的文件,这样当我require()使用 browserify 时,它将包含生成的 JavaScript。

sprockets 指令尝试包含 gem js-routes的输出,以允许我从客户端访问 Rails 路由。


这是我的设置(内app/assets/javascripts):

application.js是主文件,它运行应用程序的其余部分。我希望能够做类似的事情

在其中,并获得对路线对象的访问权限。


system/react_routes.js,我有以下内容:

(顺便说一句,我配置js-routes为将输出放在一个名为 的对象中module.exports,以符合 CommonJS 模型,如railsware/js-routes#121中所述)

唯一的问题是,当我查看生成的捆绑包时,sprockets 指令仍然存在并且没有展开。

console.log调用也在那里,并在我模块时执行require()

有没有办法让它工作?在将文件与 browserify-rails 捆绑之前,让 sprockets 预处理文件的正确方法是什么?

0 投票
0 回答
1012 浏览

ruby-on-rails - Rails,React,Browserify,react-rails gem - 找不到模块

我正在关注这个很棒的教程:setting-up-react-in-ruby-on-rails-part-1

我收到此错误:错误:无法从 xxx 找到模块 xxx

测试组件.es6.js

组件.js

当我以这种方式设置它时,它可以工作,但 TestTwo 组件没有预渲染(我使用 prerender:true)

重要编辑

在此设置内容中的服务器编辑后被预渲染,但每次在浏览器中更改数据时我都需要重新启动服务器但是当我打开源视图时旧数据没有新的!?

测试组件.es6.js

组件.js

TestTwo 组件只是返回一些文本。

两种设置的text.html.erb相同

Win7 64位操作系统

0 投票
1 回答
498 浏览

ruby-on-rails - 如何让 browserify-rails 转译 es6 文件?

我刚刚使用browserify-railsRails 4.2 创建了一个新项目。我的package.json样子是这样的:

一切都安装得很好,但是当我尝试用这个加载我非常简单的 es6 文件时:

文件内容与上面完全相同,这不是我所期望的,因为这不是有效的 ES5。

我如何让它真正转换它?

0 投票
1 回答
1617 浏览

ruby-on-rails - 未捕获的 ReferenceError:未使用 AngularJS、Rails 4 和 Browserify 定义要求

我正在使用 AngularJS 和 Rails,并按照http://start.jcolemorrison.com/setting-up-an-angularjs-and-rails-4-1-project/和其他几个教程获得了一个非常简单的“Hello World”示例在我的桌面上运行。问题是,当我将它部署到服务器时,我的基于 Angular 的代码都不再工作了。相反,我在控制台中收到Uncaught ReferenceError: require is not defined错误。

我意识到我的部分问题是浏览器不知道如何处理“require”函数调用,这是有道理的,所以我使用 browserify-rails 安装了 Browserify。但是,它仍然无法像我期望的那样在服务器上运行,并且我得到了同样的错误。

链接到现场网站:链接

这是我的application.html.erb(简化):

index.html.erb

home.html.erb(在容器内渲染):

home.js

app.js

application.js

0 投票
1 回答
552 浏览

javascript - sprockets //=require 和 browserify-rails require() 之间的区别?

带链轮:

...在 application.js 中似乎在<script src=...>我的 HTML 的头部添加了一个标签。但是,使用browserify-rails

我没有<script>看到mymodule. 但是我能够使用内部定义的代码mymodule。browserify 在这里做什么?

0 投票
0 回答
163 浏览

ruby-on-rails - 将 --noparse 与 browserify rails 一起使用

我在我的 Rails 应用程序中使用browserify-rails gem。我在开发时面临性能问题,因为任何更改在刷新时都需要 10 秒才能加载。我浏览了这个线程并发现:

browserify 支持 noparse 选项——配置

并进一步建议:

可以对供应商/捆绑包中的所有内容执行 noparse。

这是完全有道理的。但是,没有关于如何执行此操作的示例,这就是我遇到麻烦的地方。我尝试将以下行添加到我的config/application.rb

这导致了这个错误:

未捕获的错误:BrowserifyRails::BrowserifyError:运行时出错 /home/shivam/git/app/node_modules/.bin/browserifyinc --noparse="jquery-1.11.3.min.js" --cachefile=\"/home/shivam/git/app/tmp/cache/browserify-rails/browserifyinc-cache.json\" -o "/home/shivam/git/app/tmp/cache/browserify-rails/output20151109-8114-8rk552" -

作为 ES6 的新手,我无法理解这个错误的含义。我什至不确定我--noparse是否正确使用了该选项。有人可以给我一个例子吗?

0 投票
1 回答
67 浏览

ruby-on-rails - rails react browserify TypeError:对象函数没有“扩展”方法

我正在尝试使用 rails、react 和 browserify 制作一个 Web 应用程序。我一直在关注本教程,因为我想要服务器端渲染,所以我使用这个 repo作为起点,并按照自述文件中提到的教程进行操作。

尽管我认为我已经按照上述文章的建议进行了操作,但我无法弄清楚如何解决以下错误:

TypeError: Object function ( w ) { if ( !w.document ) { throw new Error( "jQuery requires a window with a document" ); } return factory( w ); } has no method 'extend'

如果你想重现错误,克隆我的 repo,它是开源的,它在 github 上,然后转到 feature 分支auth,安装 gems 和 npm 包并提升服务器:

$ cd path_to_project $ git checkout -b feature/auth $ bundle $ npm install $ bundle exec rails server

我真的很感激任何帮助,因为我目前被困在这里。另外,我是新来的反应,所以我不知道在哪里寻找问题。

编辑:根据评论中的要求,我删除了堆栈跟踪以使问题更具可读性。如果您需要任何额外的信息,请告诉我。

0 投票
1 回答
186 浏览

javascript - 使用 gem browserify-rails 时,它不反映文件更改

我想用 Rails 中的 CommonJS 模块开发 javascript。我也想从链轮中受益。我找到了 browserify-rails gem 来解决这个问题。经过tring,它似乎工作得很好。我可以使用模块。但是当我更改一些文件并刷新浏览器时,它们并没有反映出来。你有解决这个问题的想法吗?

使用 package.json 如下。

0 投票
2 回答
508 浏览

ruby-on-rails - 如何通过 github 分支使用修改后的节点模块?

我在我的应用程序中使用了rc-slider组件,并且必须添加一项功能来满足我的需求。

我分叉了主存储库并将我的更改推送到这个分支

在应用程序中,我更改package.json如下并再次运行 npm install:

没有改变。似乎 npm 没有更新依赖项。

因此,我删除了node_modules和 rails 缓存文件夹并再次运行安装命令:

现在,我有这个错误:

rc-slider当我使用修改后的分支时,NPM 找不到。

  • NPM 不更新依赖项只更改package.json文件?
  • 我应该运行一些构建命令来安装我的分支代码吗?
0 投票
1 回答
2399 浏览

ruby-on-rails - babelify + browserify-rails + react, Uncaught SyntaxError: Unexpected token import

我正在使用 browserify-rails + babelify在 react + rails 项目中转换 jsx。

我很困惑为什么// require('');需要components.js(这是反应的安装点)让 jsx 转译工作。

如果我删除注释行 // require('');,我会得到“SyntaxError: Unexpected token import”

目前我没有线索,为什么一行评论会影响翻译。我也很困惑这是否是 react、babelify、browserify、browserify-rails 或 rails 资产管道的问题。

完整代码库请参考https://github.com/sidazhou/react_rails_skeleton/tree/v0.0.1

组件.js

包.json

应用程序.rb