小编Abd*_*eed的帖子

D3:SVG中的缩放/平移线图在Canvas中不起作用

zooming/panning使用d3 创建了图形SVG.我正在尝试用相同的图形创建Canvas.我的问题是,当涉及到Canvas图形的缩放和平移时,图形正在消失,我无法弄清楚原因.我创建了两个JSBin来显示两者的代码.有人可以帮助我.

SVG - JSBin

画布 - JSBin

我的SVG缩放代码如下所示:

// Zoom Components
zoom = d3.zoom()
        .scaleExtent([1, dayDiff*12])
        .translateExtent([[0, 0], [width, height]])
        .extent([[0, 0], [width, height]])
        .on("zoom", zoomed);

function zoomed(){
    t = d3.event.transform;
    xScale.domain(t.rescaleX(x2).domain());
    xAxis = d3.axisBottom(xScale).tickSize(0).tickFormat(d3.timeFormat('%b'));
    focus.select(".axis--x").call(xAxis); //xAxis changes
    usageLinePath.attr('d',line); //line path reference, regenerate
}
Run Code Online (Sandbox Code Playgroud)

我的Canvas缩放代码如下所示:

// Zoom Components
zoom = d3.zoom()
        .scaleExtent([1, dayDiff*12])
        .translateExtent([[0, 0], [width, height]])
        .extent([[0, 0], [width, height]])
        .on("zoom", zoomed);

function zoomed() {
    t …
Run Code Online (Sandbox Code Playgroud)

javascript svg canvas d3.js

5
推荐指数
1
解决办法
525
查看次数

Observable继续调用API并根据条件更改参数

我已经阅读了Rx.js重复文档,试图找出如何根据我收到的响应继续调用api API.我打电话给一个API只能一次发回2k记录的人.API将为我发回一个值以便发送它,以便我可以继续接收记录,直到它们返回完成值.

所以流程如下:

  1. 发出GET请求查询参数reqMode='':
  2. reqMode使用带有value或的最后一个数组检索响应done.
  3. 如果我收到一个value然后我需要发出相同的请求,但发送reqMode带有值的参数.
  4. 如果我收到,done那么我将停止并返回自第一次通话以来的所有记录.

我什么时候得到第一组值subscribing normally,但这是我在阅读文档后的尝试,但这没有意义:

getRecords(){
    let url = this.url + 'reqMode=';
    return this.http.get(url)
            .doWhile() //What would I do here
}
Run Code Online (Sandbox Code Playgroud)

尝试.doWhile使用类型的Observable时Observable<response>.我正在寻找使用Observables的任何替代方案,以满足我的需求.

rxjs typescript rxjs5 angular

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

Ionic 2中的Global NavBar动态更改标题

我在离子2中使用Nav.我需要保留带有左右菜单的全局标题.目前我的菜单工作正常,但我有一个小问题.当我更改根页面时,我想更改全局标题的标题,但我似乎无法理解如何这样做.我有以下代码:

dashboard.component.html - 包含导航的页面

<ion-header>
  <ion-navbar>
      <button menuToggle="left" start>
              <img src="build/images/brite-logo-bulb.png" width="auto" height="25px"/>  
      </button>
    <ion-title>
    // how can i change the title dynamically
    </ion-title>
      <button menuToggle="right" end (click)="clearNewAlerts()">
        <ion-icon name="information-circle">
          <div class="notice-circle" *ngIf="newAlerts != 0">{{newAlerts}}</div>          
        </ion-icon>
      </button>
  </ion-navbar>
</ion-header>

<!--Left Navigation Menu HTML-->
<ion-menu [content]="content" type="overlay">
  <img src="build/images/brite-logo.png" width="100px" height="auto"/>
  <ion-content>
    <div class="menu-greeting">Hello, {{firstName}}!</div>
    <hr class="brite-nav"/>
    <ion-list no-lines>
      <button class="brite-nav-item" ion-item (click)="openPage('home')" menuToggle>
        Home
      </button>
      <button class="brite-nav-item" ion-item (click)="openPage('bills')" menuToggle>
        Bills
      </button>
    </ion-list>
    <hr class="brite-nav"/>
  </ion-content>
</ion-menu>

<!--Right …
Run Code Online (Sandbox Code Playgroud)

ionic2 angular

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

在angular-cli.json中指定样式的顺序

我使用的是第三方库mydatepickerrangeAngular 2。在angular-cli-.json我正在加载这样的包:

    "packages": {
        ...
        "mydaterangepicker" :{
          "map" : "node_modules/mydaterangepicker",
          "defaultExtension": "js"
        }
Run Code Online (Sandbox Code Playgroud)

我想在此软件包后加载我的style.css,以覆盖它的样式。我不确定该怎么做,有人遇到过类似情况吗?这是我在angular-cli.json下面的礼物:

{
  "project": {
    "version": "1.0.0-beta.19-3",
    "name": "..."
  },
  "apps": [
    {
      "root": "src",
      "outDir": "dist",
      "assets": [
        "assets",
        "favicon.ico"
      ],
      "index": "index.html",
      "main": "main.ts",
      "test": "test.ts",
      "tsconfig": "tsconfig.json",
      "prefix": "app",
      "mobile": false,
      "styles": [
        "styles.css",
        "../node_modules/bootstrap/dist/css/bootstrap.min.css"
      ],
      "scripts": [],
      "environments": {
        "source": "environments/environment.ts",
        "dev": "environments/environment.ts",
        "prod": "environments/environment.prod.ts"
      }
    }
  ],
  "addons": [],
  "packages": {
    "moment": {
      "map": "node_modules/moment/moment.js", …
Run Code Online (Sandbox Code Playgroud)

angular-cli angular

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

DynamoDB:UpdateItem,忽略 ExpressionAttributeValues 中的 Null 值

我正在使用 DynamoDB UpdateItem来更新我的数据库中的记录。像这样的基本功能对我有用。

var user = {
    userID: '123213',
    name: 'John Doe',
    age: 12,
    type: 'creator'
};
var params = {
    TableName:table,
    Key:{
        "UserID": user.userID
    },
    UpdateExpression: "set Name = :r, Age=:p, Type=:a",
    ExpressionAttributeValues:{
        ":r":user.name,
        ":p":user.age,
        ":a":user.type
    },
    ReturnValues:"UPDATED_NEW"
};

docClient.update(params, function(err, data) {
    if (err) {
        console.error("Unable to update item. Error JSON:", JSON.stringify(err, null, 2));
    } else {
        console.log("UpdateItem succeeded:", JSON.stringify(data, null, 2));
    }
});
Run Code Online (Sandbox Code Playgroud)

但...

如果我只想更新一个属性,即名称,如下所示:

 var user = {
        userID: '123213',
        name: 'John Smith'
    };
var …
Run Code Online (Sandbox Code Playgroud)

lambda amazon-web-services amazon-dynamodb aws-lambda

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

刷新解析数据 - Ui路由器

在离子中,我在resolve初始化控制器之前使用Ui-Router的功能解析我的数据.截至目前,我没有给$injectEventService到控制器.所述EventServicegetEvents()控制器被初始化之前方法解决的数据.一切都以这种方式正常工作,但现在我正在尝试实施Ion Refresher.我可以很容易地刷新我的$scope.events阵列控制器内,腹胀控制器本身,因为我会$injectEventService到控制器,这也意味着,每一个使用相同的数据控制器必须包含的逻辑来处理刷新.刷新控制器外部数据的最佳方法是什么?这是最好的方法吗?

事件状态定义和数据解析

.state('tab.events', {
    url: '/events',
    views: {
    'tab-event': {
        templateUrl: 'views/events.html',
        controller: 'EventsController',
        resolve: {
            events: function (EventService) {
                return EventService.getEvents(); //resolves data before ctrl initialized
            }
        }
    }
   }
})
Run Code Online (Sandbox Code Playgroud)

事件控制器

(function() {
  'use strict'

    angular
        .module('app.events')
        .controller('EventsController', EventsController);

        EventsController.$inject = ['$scope','events'];

        function EventsController ($scope,events) {

            $scope.events = events;

        }

}
)();
Run Code Online (Sandbox Code Playgroud)

膨胀事件控制器 - 示例

(function() {
  'use strict' …
Run Code Online (Sandbox Code Playgroud)

angularjs angular-ui-router ionic-framework ionic

3
推荐指数
1
解决办法
3522
查看次数

基于一个值对一组输入使用ng-disabled

我目前正在使用一个复选框来切换8个表单元素上的disabled属性.我在每个元素上都使用了ngDisabled指令.我正在寻找一种方法,我不必将指令放在8个元素中的每一个上.这可能吗?

复选框切换

<input type="checkbox" ng-model="aircraftOnGround" />
Run Code Online (Sandbox Code Playgroud)

当前工作在每个表单元素上使用的Disabled指令

ng-disabled="aircraftOnGround"
Run Code Online (Sandbox Code Playgroud)

Codepen: CodePen

javascript angularjs angularjs-directive angularjs-scope

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