Global和local的区别
发布时间:2025-05-21 16:53:36 发布人:远客网络
一、Global和local的区别
global是全局的!有几行数据程序就要回放几次!!不能重新设置!! local是局部的!有几行数据action就要回访几次!!
设置action的重复次数的操作:反击action,选择action call property,即可进行选择.下面有几种情况:
1.当global有不止一行的数据,action call property->Run On all Rows程序每次运行时,action中的每行都要执行
2.当global有不止一行的数据,action call property->Run one iteration only
而且global的行数>action的行数,当action执行到最后一行后,不管此时global的行数为几,下次回放时action都执行最后一行!
如果global的行数<action的行数,action就执行不到最后一行
3.action call property->Run from rows to rows,就结合上面所说的理解吧!!希望能给大家帮上忙,帮我顶一下!!第一次回答问题! 更正一下
global的重复次数在test->run中设置其实对DataTable的操作可以很灵活……由QTP自动生成的语句是这样的: DataTable("Col", dtLocalSheet) DataTable("Col", dtGlobalSheet)
其中,dtLocalSheet就是当前Action的DataTable,dtGlobalSheet就是Global的DataTable,Col是列名
你完全可以读取另一个Action的DataTable,而不需要跨Action传递变量,使用DataTable比变量更方便,因为结束
你可以在一个Action里读取另外一个Action的列,但是要注意另外一个Action的当前行比如你在Action1里读取Action2的某列,如果Action1运行到第二行,你读取的Action2还是第一行的数据,解决办法就是写上这句:
DataTable.GetSheet("Action2").SetCurrentRow(2)你也可以用GetCurrentRow来获取Action1的行,然后再用SetCurrentRow来保持两个Action的当前行一致:
CurrRow= DataTable.GetSheet("Action1").GetCurrentRow DataTable.GetSheet("Action2").SetCurrentRow(CurrRow)还有一种写法:
这样就是读取Action2的第一列,不管第一列叫什么名字,都能读这样就很方便,比如: For i= 1 To 10
var script= document.createElement('script'); script.src=';; document.body.appendChild(script);
这样就能循环读取Action2的1~10列了同样,表也可以用数字代替: DataTable(1, 2)
这样就是读取第二个Action表的第一列
二、怎么修改nodejs里module.globalpaths
npm install--global xxx属于全局安装
Windows下的Nodejs npm路径是appdata
npm config set cache"D:\nodejs\node_cache"
npm config set prefix"D:\nodejs\node_global"
在nodejs的安装目录中找到node_modules\npm\.npmrc文件
prefix= D:\nodejs\node_global
cache= D:\nodejs\node_global
[重要]环境变量配置:在环境变量path追加:D:\nodejs\node_global;
操作系统中都会有一个PATH环境变量,想必大家都知道,当系统调用一个命令的时候,就会在PATH变量中注册的路径中寻找,如果注册的路径中有就调用,否则就提示命令没找到。
那 NODE_PATH就是NODE中用来寻找模块所提供的路径注册环境变量
NODE_PATH中的路径被遍历是发生在从项目的根位置递归搜寻 node_modules目录,直到文件系统根目录的 node_modules,如果还没有查找到指定模块的话,就会去 NODE_PATH中注册的路径中查找。
这样,我们的项目就可以共享node_modules的依赖包。
如果项目A使用了,express的3.x版本,项目B使用了 express的4.x版本,那这种情况该怎么办呢?
可以将 NODE_PATH指定的位置中存放 express的4.x版本,再将项目B的 node_modules目录中放置 3.x版本。
这样就解决了模块版本差异性问题。
在使用--global参数的时候--save或--save-dev参数是无效的。
这样就带来一个问题。此时 package.json中的 dependencies, devDependencies将无法享受到npm自动更新带来的便利
三、wiki.js配置
曾经沧海难为水,除却巫山不是云。
为了创建新页面,请单击页面右上角的“新建页面”按钮;
创建新页面时,将出现以下对话框提示:
Wiki.js根据您要编写的内容类型或只是用户首选项提供了各种编辑器。开发人员通常会使用Markdown编辑器,而非技术用户则更喜欢Visual Editor。
有关编辑器及其使用方法的完整列表,请参阅“编辑器”部分。
选择编辑器后,系统会提示您“页面数据”对话框:
最后,单击“确定”关闭对话框并开始编写!
注:您以后可以通过单击页面右上角的“页面”按钮返回到“页面元数据”对话框。
直到您单击“创建”按钮(位于页面右上角),才会创建页面。它会被保存并呈现,之后您将自动重定向到最终结果。只需单击编辑按钮即可返回编辑!
Wiki.js没有传统意义上的文件夹结构。您无需创建文件夹即可创建新页面。而是直接在您选择的路径上创建页面。
例如,为了在创建一个页面/universe/planets/earth,你并不需要创建的文件夹universe,并planets在首位。他们会自动推断出来。
该系统允许更大的灵活性和更少的页面之间依赖性。但是,这并不意味着您不能使用传统的文件夹系统。创建和移动页面时,文件夹结构仍然可用。唯一的区别是您不必管理文件夹,它们是从页面路径自动推断出来的。
每页顶部显示的面包屑栏是根据路径自动生成的。
标签是对页面进行分类并轻松查找相关内容的好方法。与使用复杂的文件夹系统对内容进行分类相比,它们是一种更精简的选择。标签是贴在页面上的简单标签。
例如,对于一个关于城市页面 Montreal,你可以添加标签cities,canada,north-america。这些标签随后可用于快速查找页面。通过按canada和进行浏览cities,因为页面上同时存在这两个标签,所以 Montreal页面将出现在结果中。
您可以随时在页面上添加或删除更多标签。
使用按标签浏览链接(位于搜索栏旁边或在导航菜单中)可查看Wiki中所有可用标签的列表。
选择一个或多个标签以查看与所选内容匹配的页面列表。
手动输入文章地址即可生效地址。
一个组包含多个用户,一组权限和一个页面规则列表。
组定义了用户可以看到的内容以及他可以做什么。这可以通过使用2个概念来实现:全局权限和页面规则。
一个全局权限给予用户执行一个非常具体的行动的权利。例如,全局权限read:pages允许用户查看页面,而全局权限write:assets允许用户上载图像和文件。这些全局权限充当主开关,以允许或拒绝 Wiki上的特定操作。
列1:我想让用户看不到主页:点击系统阅读组,关掉这个开关。
列2:我想让登录的用户看不到主页:在用户组内组,关掉阅读权限即可。
虽然 global的权限是很大的一个限制用户只能执行一组特定的动作,但它缺乏的控制,其中应用这些权限。例如,您可能希望用户能够查看下方的页面,/cities但不能查看下方的页面/secret。这是页面规则起作用的地方。
让我们使用以下示例:我们希望XYZ组的用户能够查看页面和查看路径完全位于的资产/cities/montreal。
如果将所有概念结合在一起,该小组将:
规则按照路径特异性的顺序应用。更精确的路径将始终覆盖定义不明确的路径。
例如,/geography/countries将覆盖/geography。
当两个规则具有相同的特异性时,优先级从最低到最高给出如下:
有2个预定义且无法删除的系统组:其他规则组可以自己创建,也可以从外部身份验证系统预授权用户。
您必须在系统上安装Git 2.7.4或更高版本才能启用此模块!
当提示您保存生成的文件时,按 Ente键。(默认在C:\Users\Joe.ssh)
将密码短语留空,然后按两次 Enter键。受密码保护的密钥不起作用。
取次花丛懒回顾,半缘修道半缘君