草庐IT

$全局组件

全部标签

javascript - 将 eval() 与自定义全局变量一起使用

有没有办法在调用eval()时指定要用于global的对象?(我不是在问如何进行全局eval()。)这行不通,但这说明了我想要的:varpseudoGlobal={};eval("x=12",pseudoGlobal);pseudoGlobal.x;//12重点是真正的全局绑定(bind)不受代码eval()中的隐式变量声明(即没有var关键字)的影响。至于eval.call(pseudoGlobal,"x=12")或eval.apply(pseudoGlobal,["x=12"]),一些解释器不会允许它。 最佳答案 当然,您可以用

javascript - 从内容脚本 onbeforeunload 向附加组件发出消息?

我有一个内容脚本,它计算用户浏览页面的时间。为此,我将一个内容脚本注入(inject)每个页面,启动一个计时器,然后在onbeforeunload事件被触发时向插件发送一条消息。然而,该消息似乎从未传递到后台脚本。鉴于我的main.js看起来像这样:varpageMod=require('page-mod'),self=require("self");pageMod.PageMod({include:"http://*",contentScriptFile:[self.data.url('jquery.min.js'),self.data.url('content.js')],onAt

javascript - 当存在全局标志时,为什么 String.match() 不产生预期结果?

这个问题在这里已经有了答案:JavaScriptregularexpressionsandsub-matches(2个答案)关闭9年前。我正在尝试这场比赛'/links/51f5382e7b7993e335000015'.match(/^\/links\/([0-9a-f]{24})$/g)得到:['/links/51f5382e7b7993e335000015']当我期待的时候:['/links/51f5382e7b7993e335000015','51f5382e7b7993e335000015']在删除全局标志之前,我没有运气,我认为这不会影响我的结果!移除全局标志后,'/lin

javascript - Javascript 中的多个全局变量

这不是一个具体的问题,而是一个更理论化的问题。是否有充分的理由为单个Javascript应用程序公开多个全局变量?我可以看到使用并且经常自己使用单个全局变量来命名包含该应用程序的对象或类,以便可以多次调用它(下面的示例),但我想不出任何情况对象属性无法替换其他全局变量。暴露变量使生活更轻松的示例(使用闭包,它无法被召回):varmyGlobalApp={init:function(args){...},methodOne:function(){...},methodTwo:function(){...},propertyOne:'stringforexample'};myGlobalA

javascript - 在全局/根坐标中确定 SVG 视口(viewport)

在SVG元素中实际可见的内容取决于它的纵横比,它的viewBox值,及其preserveAspectRatio值(value)。例如,具有相同viewBox值(下方红色虚线)的相同SVG元素大小可以根据preserveAspectRatio具有不同视口(viewport)(下方蓝色部分):Chrome有一个viewport属性,但在我的使用中它始终是一个空的(全部为0值)SVGRect。Firefox不实现此属性。svg.getBBox()方法返回viewBox的值,而不是实际可见的视口(viewport)内容。给定对SVG元素的引用,我如何才能最轻松地确定可见内容(视口(viewpo

javascript - 如何从 ReactJS 中的 onClick 函数调用另一个组件

我正在学习Reactjs。我已经用Rails实现了一个示例React应用程序。我进行了很多搜索以找到解决方案,但没有找到任何解决方案。我想从onClick函数调用另一个组件。但什么也没有发生。这可能是我试图实现的目标吗?如果是,那么请指出我在哪里做错了,如果不是,那么我可以采用哪种方式。这是我的代码:varComment=React.createClass({render:function(){return({this.props.author}said:{this.props.desc}Delete|#thisisfordeletewhichworksgreatEdit#IfIput

javascript - React 组件在浏览器中正确呈现,但呈现 : "Only a ReactOwner can have refs" 时 Jest 测试错误

我在React中有两个组件可以很好地呈现并在浏览器中产生预期的行为,但在通过Jest运行测试时似乎无法呈现。描述.jsvarReact=require('react/addons');var$=require('jquery');varDescription=require('./description.js');varDescriptions=React.createClass({getInitialState:function(){//containeralwaysstartswithatleastonedescriptionfieldthatisempty,orwhateveri

javascript - 是否可以在一个 react ​​组件中有两种状态

我正在尝试构建一个简单的单位转换器来练习React.js。我希望能够更改一个单位的值,例如:Kg,并让另一个单位,例如:lb在屏幕上自动更改。请看这个网站给你一个想法:http://www.convertunits.com/from/lb/to/kg我有以下代码,它呈现但单位不更新。我想知道的是:一个组件有两种状态是否准确?1表示Kg另一个用于lb或者它们是否需要成为兄弟组件?如果是这样,他们将如何更新彼此的状态?如果可以在同一个组件中同时拥有两个单元的状态,那么我做错了什么?谢谢!(我有一个简单的快速应用程序来呈现页面)importReactfrom'react';exportdef

javascript - React 组件抛出的错误,被不相关的 promise 的 catch block 捕获

这是我遇到的。在React组件的渲染函数的某处,我有这个:{first_name}{last_name}我用这个替换了它:{first_name.toUpperCase()}{last_name.toUpperCase()}我的应用程序无法再登录。我正在使用Axios与后端对话。Axios是基于promise的。在我进行了上述更改之后。它显然开始执行我的loginAPI调用的then和catchblock。当我在catchblock中打印响应时。functionlogin(data,success,error){axios.post('/login',JSON.stringify(da

javascript - 我如何渲染没有 jsx 格式的 react 组件?

我尝试制作我的“智能”弹出组件,它可以在内部打开一些组件,但我的实现并不好,因为它不起作用。我使用redux方法创建弹出窗口,打开弹出窗口的操作能够在弹出窗口打开之前获取任何组件的名称进行渲染;但我遇到了一些问题,在获取参数后,在我们的例子中是nameOfComponent,我需要选择并渲染名称为nameOfComponent的组件。现在我的问题是,它如何从数组中渲染组件?//He'smycomponentsimportLoginfrom'../Login/login.js';importLogoutfrom'../Logout/logout.js';constpopupContent