小编pos*_*ssy的帖子

React ES6组件继承:工作,但不推荐?

我目前正在以下列方式继承ES6 React基本组件:

model.js(基本组件):

class ModelComponent extends React.Component {

    render() {
        // Re-used rendering function (in our case, using react-three's ReactTHREE.Mesh)
        ...
    }

}

ModelComponent.propTypes = {
    // Re-used propTypes
    ...
};

export default ModelComponent;
Run Code Online (Sandbox Code Playgroud)

然后我有两个扩展组件,看起来基本上都是这样的:

import ModelComponent from './model';

class RobotRetroComponent extends ModelComponent {

    constructor(props) {

        super(props);

        this.displayName = 'Retro Robot';

        // Load model here and set geometry & material
        ...

    }

}

export default RobotRetroComponent;
Run Code Online (Sandbox Code Playgroud)

(这里是完整的源代码)

这似乎工作正常.两种型号都出现并且正如我所期望的那样工作.

但是,我已经在多个地方读过继承不是React的正确方法 - 而是我应该使用组合.但是再一次,React v0.13不支持Mixins?

那么,我采取的方法是否正常?如果没有,问题是什么,我应该怎么做呢?

javascript reactjs

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

Three.js缩放以适合对象的宽度(忽略高度)

我有一组块对象,我想设置透视相机,使其整个宽度完全可见(高度将太大-可以,我们将上下移动)。

我已经看到许多与此相关的问题,例如:

调整相机以显示Three.js形状

Three.js-视图的宽度

THREE.JS:获取相对于摄像机和屏幕上对象位置的对象大小

如何使相机适合物体

ThreeJS。如何实现ZoomALL并确保给定的框填充画布区域?

但是,它们似乎都无法完全满足我的需求:

  • 我对高度不感兴趣,仅对宽度不感兴趣(它们不会相同-大小将是动态的,但我可以假定高度将大于宽度)

  • camera.position.z(或我估计的FOV)是未知的,所以我试图通过正确的方法来求解方程

(我对3D数学并不满意。在此先感谢!)

three.js

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

Android蓝牙低功耗断开请求未发送?

我们试图断开与外围设备的连接,但是使用蓝牙嗅探器,我们没有看到LL_TERMINATE_IND数据包.相反,手机似乎继续向Empty PDU外围设备发送大约20秒钟.

我们使用以下Cordova BLE插件:https://github.com/don/cordova-plugin-ble-central

断开连接方法在这里:https://github.com/don/cordova-plugin-ble-central#/L74

我们还试过gatt.disconnect()gatt.close()下面添加一个明确的,但它似乎没有任何区别:

public void disconnect() {
    connectCallback = null;
    connected = false;
    if (gatt != null) {
        gatt.disconnect();
        gatt.close();
        gatt = null;
    }
}
Run Code Online (Sandbox Code Playgroud)

这是相关的adb日志.adb日志"找不到上下文"中有错误可能与此有关?虽然看起来就 onDisconnected()之后.

04-15 16:25:34.931 24199 24199 I chromium: [INFO:CONSOLE(79263)] "ble:store       > Handle dispatch DOOR_DISCONNECT", source: file:///android_asset/www/js/bundle.js (79263)
04-15 16:25:34.931 24199 24199 I chromium: [INFO:CONSOLE(79263)] "ble:connecting  > § 20", source: file:///android_asset/www/js/bundle.js (79263)
04-15 16:25:34.932 24199 24274 …
Run Code Online (Sandbox Code Playgroud)

android bluetooth cordova

5
推荐指数
0
解决办法
857
查看次数

Isotope过滤能否与数百个项目和多个类别一起表现良好?

我希望使用Isotope Jquery插件(http://isotope.metafizzy.co/)来显示和过滤数百个项目(大约700个).每个项目将包含缩略图图像和名称,并且可以按三个类别过滤.(为了阻止页面长得可笑,整个内容将包含在一个可滚动的div中).

如果可能的话,我也想启用动画效果(使用'best-available'动画引擎,如果CSS3转换不可用,它将回退到JS).

我已经在本地测试了大约100个项目,它在Chrome中执行得非常快,CSS3和JS动画都非常快.但是我担心在野外,对于老客户和浏览器来说可能会变得非常缓慢(当然,有一个非常紧迫的截止日期,所以没有多少时间来构建更好的原型!).

有没有人有类似规模使用它的经验?

谢谢,

彼得

javascript performance jquery jquery-plugins

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

苗条:参考未定义

我正在使用Svelte (v2.7) 和Sapper (v0.12)。根据docsthis.refs应该可用,但它undefined适合我,包括 inoncreate和 custom 方法。

我的 index.html 看起来像这样:

<select id="wifi-ssid" ref="wifi-ssid">
...

<script>
    export default {
        oncreate() {
            console.log('this.refs is undefined here', this.refs);
        },
        methods: {
            getIsValid() {
                console.log('this.refs is undefined here too', this.refs);
                // ...
            },
            // ...
        }
    };
</script>
Run Code Online (Sandbox Code Playgroud)

完整代码在这里)。

我假设这不是一个错误(否则每个人都会遇到它?)而且我有一些问题,因为这是我第一次使用它。

svelte

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

Svelte / Sapper动态客户端路由

我正在将SvelteSapper用于Web应用程序,在该应用程序中,我需要动态地进入下一页,即在发生某些情况后(Web蓝牙连接),而不仅仅是<a>单击元素。

对于<a>链接,Sapper拦截这些链接并执行客户端路由。如何通过JavaScript自己实现客户端路由?

例如,如果我致电,location.href = ...则此请求未被拦截,并且涉及到下一页到服务器的往返。

有一个整齐的方法吗?(有点像router.route('/my-page'))?

svelte

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

带导轨的机车CMS - 液体模板的位置

我是Ruby on Rails和Locomotive CMS的新手,但我刚开始用它们创建我的第一个网站.

我已经在一个完整的Rails应用程序中运行引擎(我将需要稍后在我们自己的服务器上部署它).但它只是吐出通过管理界面定义的"模板"内容,而没有任何其他模板/内容.

管理屏幕

在此输入图像描述

我可以通过在此输入字段中推送整个页面的html来"修复"它.但那肯定是不对的?入门指南讨论了如何将模板放在文件系统中,例如:Pages/index/first page."所有页面都从索引继承".我在视图/页面下有一个index.liquid但它没有选择那个......(我也尝试了其他几个位置).

我确定这是一个愚蠢的问题,但请有人告诉我将模板放在文件系统中的哪个位置?或者如何指出机车从正确的地方拿起它?

(我确实通过Rails方式定义了文件系统液体模板,使用路径,控制器和添加我在此处找到的液体模板初始化器.但是它缺少应该来自CMS内容的变量).

我正在使用该网站加载bundle exec unicorn_rails.我正在使用Rails v3.2.13,Ruby v1.9.3和Locomotive_cms v2.2.2.

谢谢!

ruby-on-rails locomotivecms

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