小编oha*_*nho的帖子

通过JavaScript动态创建JSON对象(没有连接字符串)

我有这个JSON数据:

{
    "employees": [
        {
            "firstName": "John",
            "lastName": "Doe"
        },
        {
            "firstName": "Anna",
            "lastName": "Smith"
        },
        {
            "firstName": "Peter",
            "lastName": "Jones"
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

假设我不知道我有多少列和一行员工,如何在JavaScript中创建这个对象(没有连接字符串)?假设我在"onGeneratedRow"方法中获取每一行,并且我需要将每一列(firstName,lastName)推送到"{}"括号.

var viewData = { 
    employees : [] 
};

var rowNum = -1; 

function onGeneratedRow(columnsResult)
{
    rowNum = rowNum + 1;
    viewData.employees.push({});    
    columnsResult.forEach(function(column) {                  
    var columnName = column.metadata.colName;
    viewData.employees[rowNum][columnName] = column.value;  });
}
Run Code Online (Sandbox Code Playgroud)

javascript json

119
推荐指数
3
解决办法
41万
查看次数

保证金不会影响"包含"

我有文章的观点.它使用"include",我试图在它们之间留一点余地.但是,"android:layout_marginTop"似乎对布局没有任何影响.

我究竟做错了什么?

<LinearLayout 
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical" >    
    <include android:id="@+id/article1" layout="@layout/mainarticle" />
    <include android:id="@+id/article2" android:layout_marginTop="10dip" layout="@layout/article" />
    <include android:id="@+id/article3" android:layout_marginTop="10dip" layout="@layout/article" />
    <include android:id="@+id/article4" android:layout_marginTop="10dip" layout="@layout/article" />
    <include android:id="@+id/article5" android:layout_marginTop="10dip" layout="@layout/article" />    
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

android android-layout

39
推荐指数
4
解决办法
1万
查看次数

将JSON字符串反序列化为Dictionary <string,object>

我有这个字符串:

[{ "processLevel" : "1" , "segments" : [{ "min" : "0", "max" : "600" }] }]
Run Code Online (Sandbox Code Playgroud)

我正在反序列化该对象:

object json = jsonSerializer.DeserializeObject(jsonString);
Run Code Online (Sandbox Code Playgroud)

该对象看起来像:

object[0] = Key: "processLevel", Value: "1"
object[1] = Key: "segments", Value: ...
Run Code Online (Sandbox Code Playgroud)

并尝试创建一个字典:

Dictionary<string, object> dic = json as Dictionary<string, object>;
Run Code Online (Sandbox Code Playgroud)

dic得到null.

可能是什么问题?

.net c# json

32
推荐指数
3
解决办法
7万
查看次数

Angular2测试 - 通过Id获取元素

我正在编写一个Angular2测试组件,我在教程中注意到了这一行:

de = fixture.debugElement.query(By.css('h1'));
Run Code Online (Sandbox Code Playgroud)

de被定义为DebugElement类型.

我怎么能通过DebugElement身份证?

这似乎非常简单,但我无法在文档中找到任何方向.

angular

29
推荐指数
2
解决办法
4万
查看次数

未捕获的TypeError:无法读取undefined - chart.js的属性'offsetWidth'

我有这个简单的html:

<canvas id="myChart" width="400" height="400"></canvas>
Run Code Online (Sandbox Code Playgroud)

这个js:

var ctx = document.getElementById("myChart");

    var myChart = new Chart(ctx, {
        type: 'bar',
        data: {
            labels: ["Red", "Blue", "Yellow", "Green", "Purple", "Orange"],
            datasets: [{
                label: '# of Votes',
                data: [12, 19, 3, 5, 2, 3],
                backgroundColor: [
                    'rgba(255, 99, 132, 0.2)',
                    'rgba(54, 162, 235, 0.2)',
                    'rgba(255, 206, 86, 0.2)',
                    'rgba(75, 192, 192, 0.2)',
                    'rgba(153, 102, 255, 0.2)',
                    'rgba(255, 159, 64, 0.2)'
                ],
                borderColor: [
                    'rgba(255,99,132,1)',
                    'rgba(54, 162, 235, 1)',
                    'rgba(255, 206, 86, 1)',
                    'rgba(75, 192, …
Run Code Online (Sandbox Code Playgroud)

javascript jquery chart.js

12
推荐指数
1
解决办法
2万
查看次数

res.sendfile()不能很好地提供javascripts

我想在没有任何渲染引擎的情况下使用静态文件服务.我试过用:

res.sendfile('public/index.html');
Run Code Online (Sandbox Code Playgroud)

在'/'GET路由上,并在我的路由上表示静态文件的中间件:

app.use(express.static(path.join(__dirname, 'public')));
Run Code Online (Sandbox Code Playgroud)

似乎客户端要求的所有javascripts都是使用index.html文件信息下载的.

如何成功下载CSS/JS静态文件?

更新:

这是"res.sendfile ..."的路由:

app.get('/*', index);
Run Code Online (Sandbox Code Playgroud)

我希望在任何路由上对服务器的所有请求都会得到,index.html并且它的所有JS和CSS都会被关联.

node.js express

10
推荐指数
2
解决办法
3万
查看次数

获取redis中存在的所有哈希值

我在 redis 缓存中有哈希值,例如:

Hash         Key    Value
hashme:1    Hello   World
hashme:2    Here    Iam
myhash:1    Next    One
Run Code Online (Sandbox Code Playgroud)

我的目标是将哈希作为 CLI 中的输出,例如:

hashme
myhash
Run Code Online (Sandbox Code Playgroud)

如果没有这样的选项,这也可以:

 hashme:1
 hashme:2
 myhash:1
Run Code Online (Sandbox Code Playgroud)

我在 Redis API 中没有找到任何相关的命令。

有什么建议 ?

redis redis-cli

9
推荐指数
3
解决办法
2万
查看次数

Redis - 手动提升从属设备

假设我有[从属IP地址],它是[主IP地址]的从属设备.

现在我的主服务器已经关闭,我需要将此slave设置为MANUALLY(没有使用Sentinel自动故障转移,WITH redis命令).

是否可以在不重新启动redis服务的情况下执行此操作?(并丢失所有缓存的数据)

redis

8
推荐指数
1
解决办法
2万
查看次数

命名空间“jasmine”没有导出成员“SpyObj”

我正在尝试为我的测试创建一个间谍对象:

let spy: jasmine.SpyObj<GeneralService>;
Run Code Online (Sandbox Code Playgroud)

不幸的是,我在运行时遇到此错误ng test

Namespace 'jasmine' has no exported member 'SpyObj'
Run Code Online (Sandbox Code Playgroud)

此外,WebStorm 标记SpyObj为未解决的变量。

这是devDependencies我的package.json

"devDependencies": {
    "@angular/cli": "1.7.3",
    "@types/jasmine": "2.5.36",
    "@types/node": "7.0.27",
    "jasmine": "~2.4.1",
    "jasmine-core": "~2.4.1",
    "karma": "^1.7.1",
    "karma-chrome-launcher": "^2.2.0",
    "karma-cli": "^1.0.1",
    "karma-jasmine": "^1.1.1",
    "karma-jasmine-html-reporter": "^0.2.2",
    "karma-phantomjs-launcher": "^1.0.2",
    "lodash": "4.16.2",
    "ts-node": "1.3.0",
    "tslint": "^3.15.1",
    "typescript": "2.6.2"
  }
Run Code Online (Sandbox Code Playgroud)

更新:

我参考 Angular 测试文档: https://angular.io/guide/testing

let masterService: MasterService;
let valueServiceSpy: jasmine.SpyObj<ValueService>;

beforeEach(() => {
  const spy = jasmine.createSpyObj('ValueService', ['getValue']);

  TestBed.configureTestingModule({
    // Provide both …
Run Code Online (Sandbox Code Playgroud)

jasmine angular

8
推荐指数
1
解决办法
6264
查看次数

调试gf3/sandbox模块

我在node.js做我的宝贝步骤,我正在尝试理解沙盒机制.

目前我使用的是节点v4.0.0和node-inspector v0.12.3.

我已经安装了gf3/sandbox模块并使用这个简单的代码运行它:

var s = new Sandbox();
s.run('1 + 1 + " apples"',function(output) {
                console.log(output.result);
        });
Run Code Online (Sandbox Code Playgroud)

为了便于调试,我还在sandbox.js文件中注释了超时功能:

// timer = setTimeout(function() {
    // self.child.stdout.removeListener('output', output);
    // stdout = JSON.stringify({ result: 'TimeoutError', console: [] });
    // self.child.kill('SIGKILL');
  // }, self.options.timeout);
Run Code Online (Sandbox Code Playgroud)

问题是调试不会破坏任何行代码shovel.js,并且我100%确定模块正在使用其代码.

这是为什么 ?我可以做些什么来调试shovel.js

javascript sandbox node.js node-inspector

7
推荐指数
1
解决办法
171
查看次数