草庐IT

组件mounted第二次不执行

全部标签

javascript - 第一次加载组件时 Angular 4 ngOnInit 不工作

我在Angular4中有一个组件和一个用于更改路由的模板这个组件被调用但不加载任何没有服务器调用的东西。如果我将ngOnInit()方法内容放入构造函数中,它就可以正常工作。似乎没有调用ngOnInit。自从过去2天以来,任何人都可以帮助我处理这个问题。这是我的路由配置。consttestRouting:ModuleWithProviders=RouterModule.forChild([{path:'createtest/:id',component:TestComponent,resolve:{test:TestResolver}},{path:'createtest',compo

javascript - vue 在 v-model 之后执行@click

我有一个状态基于todo.complete的复选框todo.save()将当前的完整值保存到数据库中。但是@click似乎在v-model绑定(bind)更新todo.complete之前被触发我必须这样做才能让它工作:有什么方法可以在v-model更新后执行todo.save()。类似于@click.after 最佳答案 尝试使用change事件代替: 关于javascript-vue在v-model之后执行@click,我们在StackOverflow上找到一个类似的问题:

javascript - Vuex Mutation 正在运行,但组件在 vue 开发工具中手动提交之前不会更新

我有一个vue组件,我无法从通过服务调用填充的计算属性进行更新。Feed.vueStatsfor{{feed.name}}loading{{feedID}}exportdefault{data:()=>{return{feedID:false}},computed:{feed(){returnthis.$store.state.feed.currentFeed},loading(){returnthis.$store.state.feed.status.loading;}},created:function(){this.feedID=this.$route.params.id;var

javascript - Vue-动态导入vue组件

我有很多组件,我想按需导入。我有一个下拉列表,其中实际包含组件列表,即要加载的内容。我试过这个例子在脚本中componentLoader(){return()=>import('@/components/testDynamic')}testDynamic是一个组件名称(现在我正在尝试使用静态组件)。出现这个错误GEThttp://localhost:8080/0.jsnet::ERR_ABORTED404[Vuewarn]:Failedtoresolveasynccomponent:function(){return__webpack_require__.e/*import()*/(0

javascript - 具有动态图像源的可重用 Gatsby-Image 组件

我正在考虑在我的下一个项目中使用Gatsby-Image,并且已经尝试了一些。我让它在我的测试项目上工作,但后来我想出了一个用例,我想像使用常规一样使用Gatsby的标签。标签。如何使Gatsby组件可重用?importReactfrom"react"import{StaticQuery,graphql}from"gatsby"importImgfrom"gatsby-image"functionrenderImage({file}){console.log({file})return}//StatelessImagecomponentwhichIguesswill//receivet

javascript - 在不使用 async/await 的情况下按顺序执行 promise 数组

假设我有一系列promise。我的数组中的每个元素都是一个knex.js查询生成器,并准备好执行并返回一个promise。如何按顺序运行此数组的每个元素。该数组是动态构建的。letpromisesArray=[q1,q2,q3];每个q本身不是一个promise,但它会在执行时返回一个promise。 最佳答案 这里可能是一个可能的选择:letp=Promise.resolve([]);promisesArray.forEach(q=>{p=p.then(responses=>{//basedonthenatureofeachq,t

javascript - 使用 Webpack 4 构建 React 组件库

我目前正在构建一个React组件库并将其与Webpack4捆绑在一起。从构建库的包到将其发布到npm注册表,一切都运行良好。但是,我无法在其他React应用程序中导入它的任何组件并在运行时收到此错误消息:Elementtypeisinvalid:expectedastring(forbuilt-incomponents)oraclass/function(forcompositecomponents)butgot:undefined.Youlikelyforgottoexportyourcomponentfromthefileit'sdefinedin,oryoumighthavemi

javascript - 当页面完全呈现时,您如何执行 JavaScript 函数?

当页面完全呈现(显示)时,您将如何执行JavaScript函数?我知道onLoad事件在页面加载时但在呈现之前执行。我以前通过使用间隔为0的超时解决了这个问题,这似乎通常有效,但对我敏感的感觉来说似乎有点不雅观。有没有正确的方法来做到这一点?我使用原型(prototype)作为我的JavaScript框架,所以涉及的答案很有帮助,但我认为这会内置到JavaScript中。 最佳答案 onload事件在页面完全呈现时触发(包括图像等依赖项)。也许您将它与Prototype的dom:loadedevent混淆了(当加载DOM但在所有依赖

javascript - __DoPostback 在执行部分回发时回发禁用控件的值

我有一个表单,为了隔离问题,它有大约一打纯HTML复选框(不是WebControls),所有这些都禁用。它们位于UpdatePanel中。我有一个调用的链接__doPostBack('a-control','my-custom-argument');根据我提供的第一个参数,页面可能会执行完整的回发或部分回发。当我执行完整的回发时,没有任何复选框值在帖子中提交(因为它们被禁用)。这是正常,因此也是期望的行为。但是,当它执行部分回发时,脚本会从我的复选框中收集所有值并提交它们,但不会指示哪些已被禁用,这会破坏我的代码。这很烦人,我希望它的行为始终如一。无论如何告诉.NETjavascrip

javascript - 如何让我的 jQuery 在成功发布 ajax 之后才执行 <a href> ?

我正在尝试更新数据库并通过单击将用户浏览器发送到不同的页面。Html看起来像这样:ClickhereJavascript看起来像这样:$("#updateLiveProgress").live("click",function(e){varajaxlink="~ajaxlink~"$.post(ajaxlink,function(data,e){returntrue;});});当用户点击链接时,它应该通过ajax链接更新数据库,然后返回的页面将依赖于ajax数据库更新。问题是页面似乎在ajax完成更新数据库之前加载。我正在尝试使用e将点击事件传递给ajax,以防止链接在ajax调用完