2017-07-19 96 views
0

我使用Vuex從API獲取帖子和評論。現在,我有:VueJS - 計算後操縱DOM

mounted() { 
    this.$store.dispatch('getComments', this.post); 
    }, 

    computed: { 
    comments() { 
     return this.$store.getters.orderedComments; 
    }, 

評論正文是一個包含HTML標籤的字符串。我需要從給定類的a標籤中去除href屬性。

cleanUnwantedLinks() { 
    const link = document.getElementsByClassName('link-class')[0]; 
    link.removeAttribute('href'); 
    } 

我不知道如何致電cleanUnwantedLinks。應該在安裝組件後立即調用它(當我有評論時)。有沒有辦法做到這一點?

+0

也許將你的'dispatch'到'created'鉤在'mounted'掛鉤是做'cleanUnwantedLinks'? –

回答

0

如果你會從你的getComments行動返回一個承諾,你可以這樣做:

this.$store 
    .dispatch('getComments', this.post) 
    .then(() => { 
    cleanUnwantedLinks() 
    /* 
    Can also try wrapping your call in $nextTick 
    this.$nextTick(() => { cleanUnwantedLinks() }) 
    */ 
    }); 
+0

謝謝,@yev! 'nextTick'沒有用,但是鏈接了諾言! – foobar