JSRender 遍历对象

在使用jsrender模板的时候,如果要使用循环对象的话,除了for之外,还有一个能解决问题的循环对象属性的方法 props

例如 拿到的数据是110116_0Lxj_2374203.png,我在写代码的过程中想要循环imgs对象,然后遍历每个imgs,并且显示在模板中,用法是:110344_gBuO_2374203.png即可。

摘抄:刚开始小菜以为{{for Object}}的用意是遍历该Object的所有属性,但仔细一想,这个功能{{props Object}}已经实现了,props标签的作用就是遍历Object所有属性,有多少个属性,就循环多少次,每次循环都会有两个隐藏的属性:key,prop,key代表属性名,prop代表属性值,用起来非常方便。

 

当然,在prop也可以在遍历对象的时候对对象进行判断,只要在prop变迁中加入{{else}},如果对象为undefined或对象为空,那么就执行else逻辑。

转载于:https://my.oschina.net/u/2374203/blog/1491240

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Three.js中,您可以通过以下方法来查询对象模型: 1. 选择对象 通过使用`THREE.Object3D`类中的`getObjectByName`方法,您可以使用对象的名称选择对象。例如,`scene.getObjectByName('objectName')`将返回名为“objectName”的对象。 2. 检查对象是否与射线相交 使用`THREE.Raycaster`类,您可以检查射线是否与对象相交。首先,您需要定义一个射线,然后使用`raycaster.intersectObjects(objects, recursive)`方法来检查与射线相交的对象。例如,以下代码将返回与名为“objectName”的对象相交的所有对象: ```javascript var raycaster = new THREE.Raycaster(); var mouse = new THREE.Vector2(); function onMouseMove(event) { mouse.x = (event.clientX / window.innerWidth) * 2 - 1; mouse.y = - (event.clientY / window.innerHeight) * 2 + 1; } function render() { raycaster.setFromCamera(mouse, camera); var intersects = raycaster.intersectObjects(scene.children, true); for (var i = 0; i < intersects.length; i++) { if (intersects[i].object.name === 'objectName') { // 您可以在这里执行一些操作 } } renderer.render(scene, camera); } window.addEventListener('mousemove', onMouseMove, false); ``` 3. 遍历对象树 使用`THREE.Object3D`类中的`traverse`方法,您可以遍历对象及其子对象,并执行回调函数。例如,以下代码将遍历所有对象及其子对象,并输出它们的名称: ```javascript scene.traverse(function(child) { console.log(child.name); }) ``` 这些方法可以帮助您查找和操作Three.js中的对象模型。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值