我想有条件地显示和隐藏此按钮组,具体取决于从父组件传入的内容,如下所示:
<TopicNav showBulkActions={this.__hasMultipleSelected} />
Run Code Online (Sandbox Code Playgroud)
....
__hasMultipleSelected: function() {
return false; //return true or false depending on data
}
Run Code Online (Sandbox Code Playgroud)
....
var TopicNav = React.createClass({
render: function() {
return (
<div className="row">
<div className="col-lg-6">
<div className="btn-group pull-right {this.props.showBulkActions ? 'show' : 'hidden'}">
<button type="button" className="btn btn-default dropdown-toggle" data-toggle="dropdown" aria-expanded="false">
Bulk Actions <span className="caret"></span>
</button>
<ul className="dropdown-menu" role="menu">
<li><a href="#">Merge into New Session</a></li>
<li><a href="#">Add to Existing Session</a></li>
<li className="divider"></li>
<li><a href="#">Delete</a></li>
</ul>
</div>
</div>
</div>
);
}
});
Run Code Online (Sandbox Code Playgroud)
然而,{this.props.showBulkActions?没有发生任何事情?'show':'hidden'}.我在这里做错了吗?
我正在编写一个轻量级类,其属性旨在可公开访问,并且有时仅在特定实例中被覆盖.在Python语言中没有为类属性或任何类型的属性创建文档字符串的规定.记录这些属性的可接受方式是什么?目前我正在做这样的事情:
class Albatross(object):
"""A bird with a flight speed exceeding that of an unladen swallow.
Attributes:
"""
flight_speed = 691
__doc__ += """
flight_speed (691)
The maximum speed that such a bird can attain.
"""
nesting_grounds = "Raymond Luxury-Yacht"
__doc__ += """
nesting_grounds ("Raymond Luxury-Yacht")
The locale where these birds congregate to reproduce.
"""
def __init__(self, **keyargs):
"""Initialize the Albatross from the keyword arguments."""
self.__dict__.update(keyargs)
Run Code Online (Sandbox Code Playgroud)
这将导致类的docstring包含初始标准docstring部分,以及通过扩充赋值为每个属性添加的行__doc__.
虽然在文档字符串样式指南中似乎没有明确禁止这种样式,但它也没有作为选项提及.这里的优点是它提供了一种方法来记录属性及其定义,同时仍然创建一个可呈现的类docstring,并避免编写重复来自docstring的信息的注释.我仍然有点生气,我必须实际写两次属性; 我正在考虑使用docstring中值的字符串表示来至少避免重复默认值.
这是否是对特设社区公约的毁灭性违反?好吗?有没有更好的办法?例如,可以创建包含属性值和文档字符串的字典,然后__dict__在类声明的末尾将内容添加到类和docstring中; 这样可以减少两次输入属性名称和值的需要. 编辑:我认为,这最后一个想法实际上是不可能的,至少不是没有从数据动态构建整个类,这似乎是一个非常糟糕的想法,除非有其他理由这样做. …
当名称相同时,python如何区分类属性,实例属性和方法?
class Exam(object):
test = "class var"
def __init__(self, n):
self.test = n
def test(self):
print "method : ",self.test
test_o = Exam("Fine")
print dir(test_o)
print Exam.test
print test_o.test
test_o.test()
Run Code Online (Sandbox Code Playgroud)
输出:
['__class__', '__delattr__', '__dict__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__module__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'test']
<unbound method load.test>
Fine
Traceback (most recent call last):
File "example.py", line 32, in <module>
test_o.test()
TypeError: 'str' object is not callable
Run Code Online (Sandbox Code Playgroud)
怎么打电话
Exam.test- > <unbound method load.test>output显示方法 …我有以下基类和子类:
class Event(object):
def __init__(self, sr1=None, foobar=None):
self.sr1 = sr1
self.foobar = foobar
self.state = STATE_NON_EVENT
# Event class wrappers to provide syntatic sugar
class TypeTwoEvent(Event):
def __init__(self, level=None):
self.sr1 = level
self.state = STATE_EVENT_TWO
Run Code Online (Sandbox Code Playgroud)
在我的代码中,我正在检查TypeTwoEvent类的实例,检查我知道在基类中存在的字段 - 我希望它默认值为None.但是,我的代码引发了以下异常:
AttributeError:'TypeTwoEvent'对象没有属性'foobar'
我的印象是基类字段将由子类继承,并且创建子类的实例将实例化基类(从而调用其构造函数)...
我在这里失踪了什么?为什么TypeTwoEvent没有一个None属性-当其所来源的基本类有一个TypeTwoEvent属性?
我使用类似的几个div
我想选择所有这些并if ( $(this).hasClass() )用来检查它们中的一个.目前我只检查一个班级.例如,我如何检查所有这些.hasClass('wrap-*-addon-1')?
最好的祝福.
Python如何评估类属性?我偶然发现了一个有趣的怪癖(在Python 2.5.2中),我想解释一下.
我有一个类,其中一些属性是根据其他先前定义的属性定义的.当我尝试使用生成器对象时,Python会抛出错误,但如果我使用普通的普通列表解析,那就没问题了.
这是精简的例子.请注意,唯一的区别是Brie使用生成器表达式,同时Cheddar使用列表推导.
# Using a generator expression as the argument to list() fails
>>> class Brie :
... base = 2
... powers = list(base**i for i in xrange(5))
...
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<stdin>", line 3, in Brie
File "<stdin>", line 3, in <genexpr>
NameError: global name 'base' is not defined
# Using a list comprehension works
>>> class Cheddar :
... base = 2 …Run Code Online (Sandbox Code Playgroud) 我需要从DEFAULTS字典动态创建类属性.
defaults = {
'default_value1':True,
'default_value2':True,
'default_value3':True,
}
class Settings(object):
default_value1 = some_complex_init_function(defaults[default_value1], ...)
default_value2 = some_complex_init_function(defaults[default_value2], ...)
default_value3 = some_complex_init_function(defaults[default_value3], ...)
Run Code Online (Sandbox Code Playgroud)
我也可以通过某事来实现这个目标.喜欢__init__用于类创建,以便从字典中动态创建这些属性并保存大量代码和愚蠢的工作.
你会怎么做?
非常感谢你提前!
我注意到,如果我在创建该类的实例时定义一个等于函数的类属性,该属性将成为绑定方法.有人能解释一下这种行为的原因吗?
In [9]: def func():
...: pass
...:
In [10]: class A(object):
....: f = func
....:
In [11]: a = A()
In [12]: a.f
Out[12]: <bound method A.func of <__main__.A object at 0x104add190>>
In [13]: a.f()
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-13-19134f1ad9a8> in <module>()
----> 1 a.f()
global a.f = <bound method A.func of <__main__.A object at 0x104add190>>
TypeError: func() takes no arguments (1 given)
Run Code Online (Sandbox Code Playgroud) 默认情况下用
<%: Html.EditorFor(m => m.ConfirmationHeadline) %>
Run Code Online (Sandbox Code Playgroud)
输出是:
<input type="text" value=""
name="ConfirmationHeadline" id="ConfirmationHeadline"
class="text-box single-line">
Run Code Online (Sandbox Code Playgroud)
如您所见,输入已附加class属性.嗯,这不应该是一个问题,只需使用
<%: Html.EditorFor(m => m.ConfirmationHeadline, new { @class="span-11 last"}) %>
Run Code Online (Sandbox Code Playgroud)
应该工作...... 错误......不!
这将输出完全相同的代码!
虽然,工作正常 Html.TextAreaFor()
如何从中删除该类text-box single-line,以便可以附加我自己的类?我应该编辑的任何T4模板?
谢谢你的帮助.
我有一个经过全面测试的实用程序类,我不希望VS调试器进入任何方法.我想我已经听说过一种方法来标记某些东西而不是我的代码,以便Just My Code调试器设置使调试器跳过这些方法调用,但是对于我的生活,我不记得类属性是什么(我也不能成功谷歌为了它).
我知道我可以将这个类分成它自己的程序集并在发布模式下构建它来缓解这个问题,但是我想进入一些程序集(我希望将这个类保持在原来的位置).
这是可能的,还是我梦想着这个选择?
更新
我使用两个选项(DebuggerStepThrough和DebuggerNonUserCode)进行了一些测试,我发现DebuggerNonUserCode在Just My Code启用/禁用时的行为与框架完全相同.该DebuggerStepThrough属性始终使调试器跳过标有该属性的部分.为了保持一致性,我选择了DebuggerNonUserCode.
class-attributes ×10
python ×6
class ×2
javascript ×2
methods ×2
.net ×1
attributes ×1
c# ×1
css ×1
docstring ×1
html ×1
inheritance ×1
jquery ×1
reactjs ×1
textinput ×1