通过使用require(./filename)
我可以包含并执行文件名内的代码,而不在文件名本身内定义任何导出.
ES6使用的等价物是什么import
?
谢谢
我已经看到了许多Ruby代码示例(例如,http://www.sinatrarb.com/).这需要什么目的?
# require 'rubygems'
require 'sinatra'
get '/hi' do
"Hello world!"
end
Run Code Online (Sandbox Code Playgroud)
在所有情况下,代码都可以在没有这一行的情
如果我有这样的文件结构:
./main.lua
./mylib/mylib.lua
./mylib/mylib-utils.lua
./mylib/mylib-helpers.lua
./mylib/mylib-other-stuff.lua
Run Code Online (Sandbox Code Playgroud)
从main.lua
文件mylib.lua
中可以加载完整路径require('mylib.mylib')
.但在内部mylib.lua
我还想加载其他必要的模块,我不想总是指定完整的路径(例如mylib.mylib-utils
).如果我决定移动文件夹,我将有很多搜索和替换.有没有办法只使用路径的相对部分?
UPD.我正在使用Lua和Corona SDK,如果这很重要的话.
我正在开发一个webpack网站.当我有这样的代码:
import $ from 'jquery';
function foo() {};
module.exports = foo;
Run Code Online (Sandbox Code Playgroud)
我收到了错误Uncaught TypeError: Cannot assign to read only property 'exports' of object '#<Object>'
.
事实证明,改变import $ from 'jquery'
以var $ = require('jquery')
不引起任何错误.
为什么用module.exports导入会导致此错误?使用require有什么不对吗?
我最初使用电子稳定(4.xx),并且能够require
在我的浏览器和渲染器过程中使用。我升级到电子beta(5.0.0),因为我需要较新版本的node并在渲染器过程中遇到此错误消息Uncaught ReferenceError: require is not defined
。
谷歌浏览电子文档,我发现有评论说该错误可能是由webPreferences.nodeIntegration
初始化BrowserWindow
; 时设置为false 引起的。例如:new BrowserWindow({width, height, webPreferences: {nodeIntegration: false}});
。但是我没有这样做,所以我认为还有其他问题,并继续寻求解决方案。
我正在尝试编写一个既可以是require
d 又可以是import
ed 的库。在网上找到了不同的方法,如下:
{
"main": "mylib-cjs.js",
"module": "mylib-esm.js"
}
Run Code Online (Sandbox Code Playgroud)
和
{
"exports": {
"import": "mylib-esm.js",
"require": "mylib-cjs.js"
}
}
Run Code Online (Sandbox Code Playgroud)
这两种方法的优点和缺点是什么,它们有何不同?
我在Ruby中导入文件时遇到了麻烦.我在Windows XP中制作一个Ruby应用程序.该应用程序的所有类文件都在"C:/Documents/Prgm/Surveyor_Ruby/lib"
.但是当我require
在另一个文件中的文件时,ruby和irb都无法找到所需的文件.
当前目录的内容:
C:\Documents\Prgm\Surveyor_Ruby\lib>dir
Volume in drive C has no label.
Volume Serial Number is AAAA-BBBB
Directory of C:\Documents\Prgm\Surveyor_Ruby\lib
10/09/2010 06:32 PM <DIR> .
10/09/2010 06:32 PM <DIR> ..
10/08/2010 03:22 PM 5,462 main (commented).rb
10/08/2010 03:41 PM 92 question.rb
10/08/2010 09:06 PM 2,809 survey.rb
10/09/2010 06:25 PM 661 surveyor.rb
10/08/2010 01:39 PM 1,546 test.rb
5 File(s) 10,570 bytes
2 Dir(s) 40,255,045,632 bytes free
Run Code Online (Sandbox Code Playgroud)
确认irb在正确的目录中:
C:\Documents\Prgm\Surveyor_Ruby\lib>irb
irb(main):001:0> Dir.pwd
=> "C:/Documents/Prgm/Surveyor_Ruby/lib"
Run Code Online (Sandbox Code Playgroud)
...但是irb无法加载survey.rb:
irb(main):002:0> require 'survey'
LoadError: no …
Run Code Online (Sandbox Code Playgroud) 我想要一个我在另一个文件中创建的rake文件.这两个文件位于两个不同的目录中.我要求在我的第一个文件的顶部,在require之后的引号内有第二个文件的名称.它告诉我它无法加载这样的文件.这是否意味着因为它在不同的目录中找不到它?我试着坚持第二个文件的完整路径,但它仍然无法加载文件.有谁知道如何将第二个文件加载到第一个文件中?
提前致谢
ruby ruby-on-rails require ruby-on-rails-3 ruby-on-rails-3.2
我写了一个寻找config/
配置文件的gem .这工作正常,但如果用户更改任何配置,他们必须停止程序并在我的gem加载新配置之前再次启动它.这将要求他们在每次更改时重新启动整个rails应用程序,这并不理想.
有没有办法"重新要求"一个文件,以便它新鲜加载它而不是使用缓存版本.
我需要活动记录,但我在rails之外工作(这就是为什么:简单的Ruby输入验证库).我需要整个rails gem,还是我可以DRYer?
require ×10
ruby ×5
javascript ×4
import ×3
node.js ×3
ecmascript-6 ×2
rubygems ×2
activerecord ×1
commonjs ×1
coronasdk ×1
electron ×1
irb ×1
lua ×1
ruby-1.9.2 ×1
webpack ×1