小编Ben*_*ing的帖子

Angular-cli:使用ng lint

我知道angular-cli使用了使用lint.js的codelyzer

使用命令时: ng lint

它可以自动修复格式吗?或者它只会通知格式错误?

ng lint --help 输出angular-cli的所有帮助命令.

jslint angular-cli

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

C函数将float转换为byte数组

我正在尝试创建一个接受float变量并将其转换为字节数组的函数.我找到了一段有效的代码片段,但如果可能的话,我想在函数中重用它.

我也在使用Arduino环境,但我知道它接受大多数C语言.

目前有效:

float_variable = 1.11;
byte bytes_array[4];

*((float *)bytes_array) = float_variable;
Run Code Online (Sandbox Code Playgroud)

我可以在这里更改以使此功能有效吗?

float float_test = 1.11;
byte bytes[4];

// Calling the function
float2Bytes(&bytes,float_test);

// Function
void float2Bytes(byte* bytes_temp[4],float float_variable){ 
     *(float*)bytes_temp = float_variable;  
}
Run Code Online (Sandbox Code Playgroud)

我不太熟悉指针等,但我读过(浮动)是使用铸造还是什么?

任何帮助将不胜感激!

干杯

*编辑:已解决

这是我的最终功能在Arduino中适用于任何发现此功能的人.在下面的答案中有更有效的解决方案,但我认为这是可以理解的.

功能:将输入浮点变量转换为字节数组

void float2Bytes(float val,byte* bytes_array){
  // Create union of shared memory space
  union {
    float float_variable;
    byte temp_array[4];
  } u;
  // Overite bytes of union with float variable
  u.float_variable = val;
  // Assign bytes to input array
  memcpy(bytes_array, u.temp_array, …
Run Code Online (Sandbox Code Playgroud)

c floating-point casting bytearray arduino

19
推荐指数
3
解决办法
5万
查看次数

确保实例化服务

背景

我们正在构建一个Angular2应用程序,并且正在积累与一个模块相关的许多特定服务.所有这些服务都松散地耦合到Subject<Type>应用程序中的事件系统.

通过构造函数实例化

因为这些服务永远不会被直接引用,只能订阅事件,所以我们只需要以某种方式实例化它们.目前我们只是将它们注入到另一个使用的服务的构造函数中.

// Services not used, just to make sure they're instantiated
constructor(
  private appService1: AppService1,     
  private appService2: AppService2,
  private appService3: AppService3,
  ...
){ }
Run Code Online (Sandbox Code Playgroud)

这看起来有点像黑客,是否有更好的方法来显式声明需要实例化的服务而不通过构造函数注入它们?

dependency-injection angular-services angular

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

Three.js-将纹理添加到自定义几何

我正在将带有纹理贴图的简单材质应用于自定义网格。我找不到我能理解的任何示例,因此我做了一些小提琴来演示我要实现的目标。

/// MATERIAL
var texture = new THREE.TextureLoader().load( "https://raw.githubusercontent.com/mrdoob/three.js/master/examples/textures/crate.gif" );
var material = new THREE.MeshBasicMaterial( { 
    map: texture,
  side: THREE.DoubleSide
} );

// TRIANGLE
var geometry2 = new THREE.Geometry();
var v1 = new THREE.Vector3(0,200,0);
var v2 = new THREE.Vector3(0,0,-100);
var v3 = new THREE.Vector3(0,0,100);
geometry2.vertices.push(v1);
geometry2.vertices.push(v2);
geometry2.vertices.push(v3);
geometry2.faces.push( new THREE.Face3( 0, 1, 2 ) );
meshCustom = new THREE.Mesh(geometry2, material);
scene.add(meshCustom);

// CUBE
var geometry = new THREE.BoxBufferGeometry( 100, 100, 100 );
mesh = new THREE.Mesh( geometry, material );
scene.add( …
Run Code Online (Sandbox Code Playgroud)

javascript three.js

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

React-Admin:实现自定义请求类型

是否可以在 react-admin 框架中的自定义提供程序中实现自定义请求类型

我的用例

就我而言,我有 2 个单独的参考字段案例。

1.参考ID字段(正常)

api -> users/1
api -> comments/1
Run Code Online (Sandbox Code Playgroud)

2. 子实体参考

api -> users/1/comments/1
Run Code Online (Sandbox Code Playgroud)

所以我打算实现另一种请求类型,如下所示:

    switch (type) {
      case GET_LIST:
        return apiGetList(resourceName, params);
      case GET_MANY:
        return apiGetMany(resourceName, params);
      case GET_MANY_REFERENCE:
        return apiGetManyReference(resourceName, params);
      case GET_MANY_REFERENCE_CUSTOM:
        return apiGetManyReferenceCustom(resourceName, params);
    }

Run Code Online (Sandbox Code Playgroud)

但我不知道如何从自定义字段触发类型?

react-admin

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

Typescript - 我可以将类型从一个模块“固定”到另一个模块吗?

背景

Node 有一个名为的包path,它在 npm 包中具有与其关联的类型定义文件@types/node。有人制作了一个名为 的客户端包path-browserify,它具有相同的 api但没有类型。

问题

我可以选择与 一起使用的@types/node类型吗?基本上我想在一个地方使用不同名称的类型。我试过这个:pathpath-browserify

// types.d.ts
declare module 'path-browserify' {
  export {default} from 'path'
}

// usage.ts
import * as path from 'path-browserify'

const joined = path.join('/', 'file');
// ^ COMPILE ERROR: join not found

const joined = path.default('/', 'file'); 
// ^ RUNTIME ERROR: default not found 
Run Code Online (Sandbox Code Playgroud)

但我无法正确访问 api。有没有更好的方法来使用这些类型定义?最好不要复制pathapi。

node.js browserify typescript

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