小编joh*_*ash的帖子

如何获取xml文件中每个节点的完整路径?

我正在使用 xpath 遍历 xml 文件。我想知道是否有一种简单的方法来获取文件中每个节点的路径。我能想到的一种方法是收集数组中的所有节点。然后将其传递到一个函数,该函数将每个节点作为参数,并不断寻找父节点,直到到达文档根。所以,

            function getPathForNode(eachXmlNode, path) {
                if ( eachXmlNode == rootNode ) {
                    return path;
                } else {
                    getPathForNode(eachXmlNode->parent, path+path_of_parent);
                }
            }
Run Code Online (Sandbox Code Playgroud)

请告诉我是否还有其他更好的方法或者递归函数是否正确?

xml xpath

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

Promise 响应的 .then 函数中的 Yield 会引发错误

以下代码抛出错误:

  syncData().then((x) => yield put(loginUserSuccess(responseData)));
Run Code Online (Sandbox Code Playgroud)

错误:关键字“yield”已被保留。

同步数据处理获取数据的异步操作。我想使用yield put(由sagas.js提供)在执行同步数据后触发登录用户成功的操作。

syncData函数的核心如下:

  export default async function syncData(dataType) {
      await Promise.all([syncData1(), syncData2()]);
  }
Run Code Online (Sandbox Code Playgroud)

javascript reactjs redux-saga

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

反应挂钩条件渲染

我有一个使用自定义钩子useTimer的功能性react组件。该组件从API(通过redux store)接收数据。

function RenderRespond(order) {
  if(order === null) return;
  const {
    buyerName,
    offerDuration,
  } = order;
  const {
    seconds,
    minutes,
  } = useTimer(offerDuration);
  return(
    <div>
      {BuyerName}
      {minutes}:{seconds}
    </div>
  );
}
Run Code Online (Sandbox Code Playgroud)

我只想在order不为null的情况下渲染此组件。代码抛出错误,即无法有条件地渲染钩子,我该如何实现?

reactjs react-hooks

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

在node.js中处理循环内的查询

在下面的代码中,val变量值由于异步行为而不断变化并生成意外输出,即在第一个循环的连接查询完成之前,var变量根据第二个循环生成错误输出.在循环中处理查询的最佳方法是什么避免异步性质引起的特性.

    var output = [];
    for ( var j = 0; j < someArr.length ; j++ ) {
         val = someArr[j];//some manipulation of someArr[j]
         connection.query( "select id from someTable where someCol = ?",val, function(err, rows, fields) {
             if ( err ) {
               console.log( err );
             } else {
               output.push( rows[0].someVal );//push query output to this variable
             }
       });
    }
Run Code Online (Sandbox Code Playgroud)

console.log(output); //应包含所有查询的输出.

node.js

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

标签 统计

reactjs ×2

javascript ×1

node.js ×1

react-hooks ×1

redux-saga ×1

xml ×1

xpath ×1