我目前正在以下列方式继承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?
那么,我采取的方法是否正常?如果没有,问题是什么,我应该怎么做呢?
我有一组块对象,我想设置透视相机,使其整个宽度完全可见(高度将太大-可以,我们将上下移动)。
我已经看到许多与此相关的问题,例如:
THREE.JS:获取相对于摄像机和屏幕上对象位置的对象大小
ThreeJS。如何实现ZoomALL并确保给定的框填充画布区域?
但是,它们似乎都无法完全满足我的需求:
我对高度不感兴趣,仅对宽度不感兴趣(它们不会相同-大小将是动态的,但我可以假定高度将大于宽度)
camera.position.z(或我估计的FOV)是未知的,所以我试图通过正确的方法来求解方程
(我对3D数学并不满意。在此先感谢!)
我们试图断开与外围设备的连接,但是使用蓝牙嗅探器,我们没有看到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) 我希望使用Isotope Jquery插件(http://isotope.metafizzy.co/)来显示和过滤数百个项目(大约700个).每个项目将包含缩略图图像和名称,并且可以按三个类别过滤.(为了阻止页面长得可笑,整个内容将包含在一个可滚动的div中).
如果可能的话,我也想启用动画效果(使用'best-available'动画引擎,如果CSS3转换不可用,它将回退到JS).
我已经在本地测试了大约100个项目,它在Chrome中执行得非常快,CSS3和JS动画都非常快.但是我担心在野外,对于老客户和浏览器来说可能会变得非常缓慢(当然,有一个非常紧迫的截止日期,所以没有多少时间来构建更好的原型!).
有没有人有类似规模使用它的经验?
谢谢,
彼得
我正在使用Svelte (v2.7) 和Sapper (v0.12)。根据docs,this.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)
(完整代码在这里)。
我假设这不是一个错误(否则每个人都会遇到它?)而且我有一些问题,因为这是我第一次使用它。
我是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.
谢谢!
javascript ×2
svelte ×2
android ×1
bluetooth ×1
cordova ×1
jquery ×1
performance ×1
reactjs ×1
three.js ×1