我正在编写Backbone应用程序,当我在线阅读文档时,我理解的是Backbone唯一的硬依赖是Underscore.但是,我想使用Lodash代替Underscore.有人可以提供我如何做到这一步的步骤吗?
作为前言,我知道我应该避免使用Bower,而是使用NPM来管理我的所有JavaScript依赖项.但是,我正在使用一些大量使用Bower的遗留代码,直到我可以将所有内容移到NPM上,我想用Bower和Webpack获得我的代码库的工作版本.
话虽这么说,我正在遵循官方指南中使用Bower与Webpack的配置设置:https://webpack.github.io/docs/usage-with-bower.html
特别是,我已经设置了一个Github仓库,我可以bower install jquery使用官方指南中的配置,我能够require("jquery")在我的源代码中使用它与Webpack一起工作.鉴于这适用于jQuery,我认为它适用于其他bower包,包括React.
然而,在运行之后bower install react,我试图require("react")在我的源代码中但Webpack提出错误说,Module not found: Error: Cannot resolve module 'react' in /Users/wmock/Desktop/using-bower-with-webpack/src.
这是我的Github回购: https ://github.com/fay-jai/Using-Bower-Through-Webpack
我有3个分支:
题:
编辑(2016年4月4日):
我一直在阅读Well Grounded Rubyist,它提到了类如何继承其超类的实例方法,以便类的对象能够调用这些实例方法.这是一个例子:
class C
def run_instance_method
puts "This is an instance method."
end
def C.run_class_method
puts "This is a class method."
end
end
class D < C
end
Run Code Online (Sandbox Code Playgroud)
根据我读过的内容,我们总是描述D类只继承C类的实例方法(在这种情况下,D ::不会继承C :: run_class_method).但是,运行上面的代码后,我注意到:
D.run_class_method # => "This is a class method."
Run Code Online (Sandbox Code Playgroud)
以下是我为什么会发生这种情况的猜测,如果这是正确的理解,请告诉我.如果存在类D的实例d并且您尝试运行d.run_instance_method,则该对象将搜索其方法查找路径,并查看该方法是在其单例类,其自己的类还是在其超类中定义的.由于run_instance_method是在C类中定义的,因此不会发生任何问题并将调用run_instance_method.对于类对象D(它是C和Object的子类),如果调用D.run_class_method,它将再次检查D类对象的方法查找路径.同样,Ruby会在类对象C中找到它.
这种推理准确吗?
我一直在阅读John Resig的"JavaScript忍者的秘密",它解释了JavaScript是单线程的.但是,我试过测试这个,我不知道该从这里带走什么:
// executing this in browser
(function () {
// throw something into event queue
setTimeout(function () {
alert("This will be called back after 1 second.");
}, 1000);
// arbitrary loop to take up some time
for (var i = 0; i < 10000; i += 1) {
console.log(i);
}
})();
Run Code Online (Sandbox Code Playgroud)
也许我并不完全理解单线程意味着什么,但我认为在所有外部匿名函数完成之前,setTimeout回调不会执行.但是,在浏览器中运行它会显示回调函数在我仍然输出到控制台时被调用.对我来说,这似乎有两个线程,匿名函数的invokation占用1个线程,然后回调使用第二个线程.
有人可以帮助我迷惑吗?
我正在查看http://elm-lang.org/examples/zip上的zip示例,我对榆树的确切含义有疑问._
zip : List a -> List b -> List (a,b)
zip xs ys =
case (xs, ys) of
( x :: xs', y :: ys' ) ->
(x,y) :: zip xs' ys'
(_, _) ->
[]
Run Code Online (Sandbox Code Playgroud)
我的预感是它意味着"其他一切",但这是否意味着任何有效价值?如果没有价值怎么办?
在使用Webpack捆绑我的应用程序之前,我使用IIFE创建模块,然后将它们附加到window对象上,以便我可以访问它们.这使得Chrome浏览器中的调试非常简单,因为模块全局可用,我可以使用断点检查它们.
我最近转而使用Webpack捆绑我的应用程序,这非常棒.但是,现在当我设置断点并想要检查导入的模块时,我无法通过引用模块名称来执行此操作.我很确定这是因为在幕后,Webpack将模块重命名为其他东西.
这是特定文件中的import语句的示例(顺便说一句,每个导入的模块都导入一个对象):
在同一个文件中,当我设置断点时,我希望能够像以前一样检查模块的内容.在下图中,我正在尝试访问CustomHelpers模块,该模块只是存储在对象中的辅助函数的集合.
有关在Chrome控制台中调试时如何引用这些导入模块的任何想法?
为了澄清,我webpack.config.js正在工作,我启用了源映射,这就是为什么我看到原始文件而不是乱码的bundle.js文件.具体来说,我只是想检查我导入的模块并查看其内容.
我一直在学习Ruby和Python,我注意到的一件事就是这两种语言似乎对待范围不同.这是我的意思的一个例子:
# Python
a = 5
def myfunc():
print a
myfunc() # => Successfully prints 5
# Ruby
a = 5
def myfunc
puts a
end
myfunc # => Throws a "NameError: undefined local variable or method `a' for main:Object"
Run Code Online (Sandbox Code Playgroud)
似乎def块可以在Python中访问在其直接范围之外声明的变量,但不能在Ruby中访问.有人可以确认我的理解是否正确吗?如果是这样,这些思考范围的方式之一是否在编程中更常见?
我想更好地了解Ruby中的对象如何具有在类和模块中定义的访问方法。具体来说,我想将其与JavaScript(我比较熟悉)进行比较和对比。
在JavaScript中,对象会在对象本身上查找方法,如果找不到,则会在原型对象上查找方法。此过程将一直持续到Object.prototype。
// JavaScript Example
var parent = {
someMethod: function () {
console.log( 'Inside Parent' );
}
};
var child = Object.create( parent );
child.someMethod = function () {
console.log( 'Inside Child' );
};
var obj1 = Object.create( child );
var obj2 = Object.create( child );
obj1.someMethod(); // 'Inside Child'
obj2.someMethod(); // 'Inside Child'
Run Code Online (Sandbox Code Playgroud)
在JavaScript示例中,obj1和obj2都不具有someMethod对象本身的功能。需要注意的关键是:
someMethod在child对象中有一个函数的副本,并且两者都有obj1并obj2委托给该child对象。obj没有功能也obj2没有副本 …这是我的文件的相关部分webpack.config.js:
module: {
loaders: [
{
test: /\.css$/,
exclude: /node_modules/,
loaders: [
"style-loader?sourceMap",
"css-loader?modules&importLoaders=1&localIdentName=[path]___[name]__[local]___[hash:base64:5]"
]
},
{
test: /\.jsx?$/,
exclude: /node_modules/,
loader: "babel-loader"
}
]
}
Run Code Online (Sandbox Code Playgroud)
当我编写自己的 css 并将其与我的React组件一起使用时,这非常有用。但是,我最近尝试使用React Datepicker,它带有自己的 css 文件,可以导入到使用 React Datepicker 的组件中。
如何修改我的webpack.config.js文件,以便我导入的 React Datepicker css 文件不会被具有本地类名的 CSS 模块转换?换句话说,是否可以配置 webpack,以便将第 3 方样式导入到全局范围,并将我自己的样式导入到本地范围?
另外,如果我想编写自己的自定义样式来覆盖 React Datepicker 样式,我该如何做才能使这些样式也在全局范围内?
我试图了解renderPhoenix 中不同功能之间的区别。具体来说,我注意到renderPhoenix 视图和 Phoenix 模板中有几个不同的功能。
例如,在 Phoenix 控制器中,通常会看到以下内容:
# assume this is UserController
def index(conn, _params) do
users = Repo.all(Users) # let's assume that this gives you all your users
render conn, "index.html", users: users
end
Run Code Online (Sandbox Code Playgroud)
在index.html与此视图关联的模板(即 UserView)中,您可以看到如下内容:
# index.html
<ul>
<%= for user <- @users do %>
<li><%= render "user.html", user: user %></li>
<% end %>
</ul>
# user.html
<p><%= @user.name %></p>
Run Code Online (Sandbox Code Playgroud)
我的理解是,render该功能内index.html模板编译成render的函数内UserView。此外,在深入研究之后iex,似乎index …
javascript ×6
ruby ×3
webpack ×3
inheritance ×2
reactjs ×2
backbone.js ×1
bower ×1
callback ×1
css ×1
css-modules ×1
debugging ×1
elixir ×1
elm ×1
es6-modules ×1
events ×1
jquery ×1
lodash ×1
python ×1
scope ×1