这似乎是显而易见的,但我发现自己对于何时使用花括号在ES6中导入单个模块感到困惑.例如,在我正在处理的React-Native项目中,我有以下文件及其内容:
initialState.jsvar initialState = {
todo: {
todos: [
{id: 1, task: 'Finish Coding', completed: false},
{id: 2, task: 'Do Laundry', completed: false},
{id: 2, task: 'Shopping Groceries', completed: false},
]
}
};
export default initialState;
Run Code Online (Sandbox Code Playgroud)
在TodoReducer.js中,我必须在没有花括号的情况下导入它:
import initialState from './todoInitialState';
Run Code Online (Sandbox Code Playgroud)
如果我initialState用大括号括起来,我会得到以下代码行的错误:
TodoReducer.js:无法读取未定义的属性待办事项
export default function todos(state = initialState.todo, action) {
// ...
}
Run Code Online (Sandbox Code Playgroud)
使用花括号的组件也会发生类似的错误.我想知道何时应该使用大括号进行单次导入,因为很明显,当导入多个组件/模块时,你必须将它们用大括号括起来,我知道.
编辑:
所谓张贴在这里并没有回答我的问题,而不是我问的时候我应不应该用花括号用于导入单个模块,或者我不应该用花括号中ES6导入单个模块(这显然不是例如,我已经看过需要花括号的单个导入)
我刚刚开始学习使用ReactJS来呈现视图,但是如果我将属性直接插入到ReactJS组件中,我发现引导CSS类不能按预期工作.例如,在下面的代码中,我希望生成一个包含以下类的面板:panel-default和panel-heading; 但是,生成的视图不带有引导程序样式.如果可能的话,我想知道为什么以及如何修复.请注意,我编译了我的ReactJS代码,并在HTML代码中包含了编译的JS(参见底部).
var taxonGroups = {
identifier: 'ABC-x981',
sources: [
{segmentName: 'segment1', length: 1090},
{segmentName: 'segment2', length: 98},
{segmentName: 'segment3', length: 2091},
{segmentName: 'segment4', length: 1076},
],
fields: ['Taxon Name', 'Taxon ID', 'Taxon source'],
collectionDate: '2001-09-10'
};
var Taxon = React.createClass({
render: function() {
return (
<div class="panel panel-default"> <div class="panel-heading"><p>{this.props.data.identifier}</p></div>
<table class="table table-bordered table-striped table-hover">
{
this.props.data.sources.map(function(source) {
return <Segment name={source.segmentName} length={source.length}/>
})
}
</table>
</div>
);
}
});
var Segment = React.createClass({
render: function() {
return <tr><td>{this.props.name}</td><td>{this.props.length}</td></tr>
} …Run Code Online (Sandbox Code Playgroud) 我刚收到QA团队的要求,我认为这听起来很荒谬.这就是:假设您已经处于基于角度的应用程序中的"关于"状态/页面,并且当您从顶部菜单再次单击"关于"状态URL时,您希望重新加载"关于"页面.该about页面不会从任何地方获取数据,顺便说一下,重新加载只相当于闪烁.
对于我的角度应用程序中的状态配置是这样的:
.state('about', {
url: '/about',
templateUrl: '/path/to/about.html',
controller: 'aboutCtrl as aboutView'
});
Run Code Online (Sandbox Code Playgroud)
在顶部菜单中,我们有一个指向此状态的链接:
<a ui-sref="about">About</a>
Run Code Online (Sandbox Code Playgroud)
我已经尝试了许多工作来实现这一点:单击链接会触发重新加载相同的状态.
事情喜欢$state.go('about', {}, {reload: true});或$state.transitionTo('about', {}, {reload: true});不起作用,因为链接是静态的.
我目前正在尝试的最后一种方法是run通过监听'$stateChangeSuccess'事件来操纵Angular阶段的重载事件,但我不认为它会起作用,因为如果你在'about'右边点击链接就没有任何状态改变在那个州.
有什么方法可以解决这个问题吗?谢谢
问题是:
编写一个名为mode的方法,它返回整数数组中最常出现的元素.假设数组至少有一个元素,并且数组中的每个元素都具有0到100之间的值(包括0和100).通过选择较低的值来打破关系.
例如,如果传递的数组包含值{27,15,15,11,27},则您的方法应返回15.(提示:您可能希望查看本章前面的Tally程序以了解如何解决这个问题呢.)
下面是我的代码几乎可以工作,除了单元素数组
public static int mode(int[] n)
{
Arrays.sort(n);
int count2 = 0;
int count1 = 0;
int pupular1 =0;
int popular2 =0;
for (int i = 0; i < n.length; i++)
{
pupular1 = n[i];
count1 = 0; //see edit
for (int j = i + 1; j < n.length; j++)
{
if (pupular1 == n[j]) count1++;
}
if (count1 > count2)
{
popular2 = pupular1;
count2 = count1;
}
else if(count1 == count2)
{
popular2 = …Run Code Online (Sandbox Code Playgroud) 我想过滤掉第3列中"同义"的行.命令如下
awk '$3 !~ /^synonymous/' fileCSV.csv > fileCSV2.csv
Run Code Online (Sandbox Code Playgroud)
但是fileCSV2.csv在第3列中仍然包含单词"synonymous".我想知道可能出错了什么?
fileCSV.csv中的两行:
"exonic","LINC00115","synonymous SNV","uc010nxx.2:c.C299T:p.P100L",,"0.99",,0.56,rs3115849,,,,,,,,,,,,,chr1,762273,762273,G,A,"chr1","762273",".","G","A","30483.62","PASS","AC=24;AF=1.00;AN=24;DP=2972;FS=0.000;MLEAC=8;MLEAF=1.00;MQ0=0;VQSLOD=19.50;culprit=FS;set=Intersection","GT:AD:DP:GQ:PL","1/1:0,2:2:6:66,6,0","1/1:0,297:297:99:10476,951,0","1/1:0,304:304:99:10098,950,0","1/1:0,295:295:99:9869,929,0","1/1:0,292:292:99:8655,895,0","1/1:0,304:304:99:10006,965,0","1/1:0,179:179:99:5862,568,0","1/1:0,273:273:99:9328,851,0","1/1:0,279:279:99:7946,850,0","1/1:0,283:283:99:9214,866,0","1/1:0,8:8:21:229,21,0","1/1:0,456:456:99:16385,1285,0"
"exonic","SAMD11","synonymous SNV","uc001abw.1:c.T1027C:p.W343R","559;Name=lod=249",,,1.00,rs6672356,1,0.916445,N,0.0,T,0.0,B,0.998605,N,4.19E-4,N,3.17,chr1,877831,877831,T,C,"chr1","877831",".","T","C","3594.56","PASS","AC=24;AF=1.00;AN=24;DP=387;FS=0.000;MLEAC=8;MLEAF=1.00;MQ=60.00;MQ0=0;VQSLOD=15.00;culprit=DP;set=Intersection","GT:AD:DP:GQ:PL","1/1:0,3:3:9:97,9,0","1/1:0,3:3:12:113,12,0","1/1:0,64:64:99:1805,189,0","1/1:0,57:57:99:1605,168,0","1/1:0,30:30:90:768,90,0","1/1:0,69:69:99:2026,216,0","1/1:0,15:15:45:428,45,0","1/1:0,23:23:81:809,81,0","1/1:0,22:22:69:562,69,0","1/1:0,40:40:99:1142,117,0","1/1:0,3:3:9:94,9,0","1/1:0,58:58:99:14,7,0"
Run Code Online (Sandbox Code Playgroud) 关于Java中的HashMap <>的另一个问题:
我有以下内容
Map<String, Set<Integer>> myWordDict = new HashMap<String, Set<Integer>>();
Run Code Online (Sandbox Code Playgroud)
在将数据存储到变量中之后myWordDict,我想迭代HashMapValues,并将每个值添加到新的Set变量中?
当我尝试这样做时Set<Integer> newVariable = myWordDict.entrySet(),似乎数据类型不兼容.
所以我的问题基本上是:
如何将HashMap值或entrySet()转换为Set?
谢谢
我的CSV文件是制表符分隔的,我试图过滤掉大于的p值0.05(换句话说,我想保留条目p <= 0.05).p值在第7列,我尝试使用以下内容:
awk '$7 <= 0.05 {print $0}' rawFile.csv > filteredFile.csv
Run Code Online (Sandbox Code Playgroud)
但是这种过滤不起作用,它返回文件而不进行过滤.
这里的p值column #7是这样的:0.33532935, 0.0, 0.8591287
我发现使用AJAX上传图像似乎不能使用表单中指定的multipart,因为我的代码用于检查它的multipart()是否从不起作用(在Java中);
if (context.isMultiPart()
{
System.out.println("received Multipart data");
}
else
{
System.out.println("not multipart data!"); /* my code always prints this message in the upload handler uploadPost() */
}
Run Code Online (Sandbox Code Playgroud)
我有这个HTML格式:
<div class="title"><label>Upload picture!</label></div>
<form method="post" id="imageUploadForm" enctype="multipart/form-data" action="/uploadPost">
Please specify file to upload: <input type="file" name="upfile"><br />
<input type="submit" value="submit" id="submitButton">
</form>
<div id="imagedisplay">
</div>
Run Code Online (Sandbox Code Playgroud)
以下是我的ajax代码,它将图像发送到地址处的上传处理程序/uploadPost.我的Java代码中的uploadPost()方法首先确定上传是否是多部分,但是,似乎ajax不会将图像作为multipart发送.是因为我在表单上使用jQuery的serialize()方法吗?
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script>
$(document).ready(function() {
$('#imageUploadForm').submit(function(evt) {
var formData = $('#imageUploadForm').serialize();
$.post('/uploadPost', formData, uploadResults);
evt.preventDefault();
});
// display the uploaded image on the same …Run Code Online (Sandbox Code Playgroud) 在具有类别列表的网页上,每个类别标题以此格式链接: http://localhost/admin/category/unpublish/2
我写了下面的js代码,尝试捕获url和段'unpublish'(动作)和'2'(id),并且需要发送请求到 http://localhost/admin/category
$('#statusChanges a').click(function(evt) { // use the click event of hyperlinks
evt.preventDefault();
var url = $(location).attr('href');
// var action = url.segment(3); /*JS console complains that url.segment() method undefined! */
// var id = url.segment(4);
$.ajax({
type: "GET",
url: $(location).attr('href'),
dat: '',
/* do I need to fill the data with json data: {"action": "unpublish, "id": 2 } ? but I don't know how to get the segments */
success: function(data) {
$('.statusSuccess').text('success!');
},
error: function(data) {
$('.statusSuccess').text('error!'); …Run Code Online (Sandbox Code Playgroud) 在我的主分支中,有以下已合并的本地分支,但我想local_branch3从主分区中删除:
local_branch1
local_branch2
local_branch3
local_branch4
Run Code Online (Sandbox Code Playgroud)
local_branch3从主服务器中删除后,我希望它保持本地分支(仅从主服务器中删除).
我在这个类似的问题上检查了Steve Harman的博客,但这似乎也永远删除了本地分支.
编辑:澄清我的意思,正如我在以下评论中发表的那样:
我希望master分支撤消local_branch3合并产生的更改,同时保持local_branch3不变.
原因是我想master在调整时保持分支可交付local_branch3.