【发布时间】:2018-11-15 16:07:51
【问题描述】:
我是 VueJS 的新手,我正在做一些奇怪的实验。我使用 python/flask 构建了一个后端服务,这个后端为我提供了一串包含许多标签的 html 代码,我想在我的 Vue 应用程序中呈现它,我有一个调用后端的方法,如下所示:
async execute (method, resource, data) {
return client({
method,
url: resource,
data: data
}).then(async req => {
return req.data.html
})
},
callBack (id) {
console.log(id)
return this.execute('post', '/content/', {body: { 'id': id }})
}
在 .vue 文件中我有:
export default {
data () {
return {
loading: false,
launch: [],
html: 'none',
page: this.$route.params.article
}
},
beforeMount () {
console.log('beforeee')
this.html = api.callBack(this.page)
},
methods: {
async launch () {
this.launch = ''
this.html = await api.callBack(this.page)
}
}
}
因此,当我调用启动函数时,它会填充 this.html,并且此 html 变量位于 v-html 中。一切似乎都可以正常工作,我获取 html 并将其呈现在 de 容器中,但链接已损坏,链接应该指向同一个应用程序,例如#/test/linkvalue,但由于它们是标签,在 vue 中你必须使用它们不起作用。
有办法实现这种“动态重新路由”还是我做的事情太奇怪了? 链接很多,因为它们是从网络上抓取的,所以手动解析不是一种选择。
提前感谢您的帮助
【问题讨论】:
-
只是出于好奇:如果你有一个 Vue 应用程序,为什么要在服务器上生成 html?
-
嗨!我只是在做一些实验。这个想法是使用服务器报废网络做一些预处理,存储并将html或其他内容返回给应用程序进行渲染。
标签: javascript html vue.js frontend