草庐IT

non-repeatable-read

全部标签

javascript - 在 AngularJS 中,如何使一个独立的范围继承自 ng-repeat 的范围

我正在尝试创建一个在ng-repeat循环中接收参数的自定义组件。因此,例如,假设我有一个名为“mycomp”的组件,它在ng-repeat中接收自定义参数“name”:在我的指令中,隔离范围定义如下:scope:{name:"@"}那是行不通的,因为ng-repeat为它迭代的每个元素创建了一个独立的范围。所以我最终得到了两个级别的范围。我该如何解决这个问题?我做错了什么吗?谢谢。 最佳答案 正如我在对您的原始问题的评论中所述,这已经得到解答。无论如何,总结如下:在您的模板中,声明您想要继承的模型,不要使用{{}}(因为使用括号会

Javascript 未捕获类型错误 : Cannot read property '0' of undefined

我知道有很多与此错误相关的问题,我已经检查了其中的大部分,但没有一个能帮助我解决我的问题。(这看起来很容易调试...)我有一个数组(一开始是空的):varwords=[];我的函数hasLetter,检查我们是否在数组(我在这里称之为:d)单词中找到一个字母(对象)。functionhasLetter(letter,d){//ifwords[0]notnullshouldreturnobjectofletter"a",herewegetting//theindexoftheletter(sinceasciiof"a"is97,Isubstract97)varascii=letter.c

javascript - 未捕获的类型错误 : Cannot read property 'name' of undefined

我尝试使用facebookapi将数据提取到表单输入中。现在,一切都很顺利,直到我还尝试获取当前用户的位置。如果当前用户分享了他的位置(他住在哪里),那么我就没有问题。但是,如果用户没有在Facebook上分享他的位置,我会收到一个错误:未捕获的类型错误:无法读取未定义的属性“名称”这是我一直在使用的代码。如果您有解决方法,请在此处发表评论:)//AdditionalJSfunctionsherewindow.fbAsyncInit=function(){FB.init({appId:'*******',//AppIDstatus:true,//checkloginstatuscook

javascript - IE11 使用 AngularJS 的 ng-repeat 渲染变慢/卡住

目前我有一个非常微妙的问题需要用IE11和AngularJS解决。我的页面由两个嵌套的ng-repeat组成,用于在任何选项卡内创建一个带有表格的选项卡集。这里是代码:http://pastebin.com/0fffPz5Z在代码中,每个应用程序的对象都有大约1.000个项目的相关对象。使用Chrome、Safari和Mozilla我没问题,一切都超快!使用IE11,页面变慢,IE11显示页面脚本太慢的消息....我用这个结果创建了一个IE11界面的分析:https://www.dropbox.com/s/y5xuystxht6gjkr/IE11-interface-profiling

javascript - 通过更改底层数组动态更新 dom-repeat 模板

是否有Polymerdomapi方法或其他方法自动更新带有附加元素的重复模板,底层数组是否应该更新?我有一个动态数组,它通过重复调用ajax来更新。该数组不断更改其长度(根据ajax响应逐渐添加或删除元素)。数组通过体现在文档中.有没有办法在底层数组更新时自动更新dom?目前我能看到的方式只有识别增量更新并手动追加或删除节点。删除整个重复模板容器并重新标记一个新模板。反正我也不知道动态标记新模板。这可能吗?我能想到的实现这一点的一种方法是让另一个自定义元素重复模板冲压,每当有数组更新时,删除当前元素,通过将更新的数组传递给元素来附加一个新元素。通过使用2,我将无法在View中使用列表自

javascript - 带有 ng-repeat、ng-show "Show more"和延迟加载的 Angular 指令

我使用此指令,遍历数组“myArr”,过滤一些条件。这给了我两个问题,我想就此征求意见:a)ng-show部分在那里是因为我有一个条件可以处理这个:Showmore为了显示或隐藏“显示更多”部分。我想不出另一个关于切换这个和/或项目本身的想法。$scope.visible在Controller内部设置为10,一旦我们开始。我无法使用limitTo,因为它无法让我确定是否还有更多要显示的内容,因为它当然会将数组“切碎”到设定的限制。b)在指令内部,模板打印一个标签。只要这些图像未显示在上述结构中,我如何才能阻止它们加载?提前致谢! 最佳答案

javascript - jQuery 不适用于 ng-repeat 结果

我正在使用ng-repeat使用jQuery和TB构建Accordion。出于某种原因,这在硬编码时工作完美,但在ng-repeat指令内部时无法触发点击。我认为问题出在jQuery没有绑定(bind)事后加载的元素。因此,我认为与其在页面加载时加载脚本,不如在返回数据时在.success上加载函数会更好。不幸的是,我不知道如何进行这项工作。测试页:http://staging.converge.io/test-jsonController:functionFetchCtrl($scope,$http,$templateCache){$scope.method='GET';$scope

javascript - AngularJS if 语句与 ng-repeat

我在尝试将if与repeat语句一起使用时遇到问题。我正在取数据,如下:modules:Array[1]0:Objectembed:""type:"embed"1:Objectsrc:"https://m1.behance.net/rendition/modules/127899607/disp/072cebf2137c78359d66922ef9b96adb.jpg"type:"image"所以,如果模块有图像类型,我想获取图像。如果它有嵌入类型,我想获取iframe。我当前的View代码是:如果我去掉ng-if,效果会很好。控制台输出以下错误:Error:Multipledirec

javascript - ng-repeat 中的函数导致无限 $digest-loop

显然我还不了解ng-repeat、$$hashKeys和trackby背后的机制。我目前在我的项目中使用AngularJS1.6。问题:我得到了一组复杂的对象,我想用它来在我的View中呈现一个列表。但要获得所需的结果,我需要先修改(或映射/增强/更改)这些对象:constsourceArray=[{id:1,name:'Dave'},{id:2,name:Steve}]constpersons=sourceArray.map((e)=>({enhancedName:e.name+e.id}))//Thusthecontentofpersonsis://[{enhancedName:'

javascript - d3-drag 0.3.0 - "Cannot read property ' button' of null"

我正在尝试将d3-drag与Canvas一起使用:select(canvas).call(drag().container(canvas).subject(partial(getNodeAtMouse,simulation,canvas)).on('start',someFunction))但是,当我实际尝试拖动时出现以下错误:Cannotreadproperty'button'ofnull从d3-drag(d3原始源代码)中的以下行functiondefaultFilter(){return!d3Selection.event.button;}如果我删除该函数(通过指定我自己的过滤器