我有一个用于Nuxt.js的实用程序插件,我用解析哈希标签的方法创建了这个插件,并提到并用<nuxt-link>替换它们。然后,我将使用v-html将转换后的数据注入模板。我的问题是,<nuxt-link>没有被v解析。
import Vue from 'vue';
Vue.mixin({
methods: {
replaceMentions(data) {
// Tags
const tagRegEx = /\[#tag:[a-zA-Z0-9_-]*\]/g;
let tagMatch;
while ((tagMatch = tagRegEx.exec(data)) !== null) {
const tag = Array.from(tagMatch[0].matchAll(/\[#tag:(.*?)\]/g));
data = data.replace(tag[0][0], '<nuxt-link to="/search?q=' + tag[0][1] + '">#' + tag[0][1] + '</a>');
};
// Users
const userRegEx = /\[@user:[a-zA-Z0-9_-]*\]/g;
let userMatch;
while ((userMatch = userRegEx.exec(data)) !== null) {
const user = Array.from(userMatch[0].matchAll(/\[@user:(.*?)\]/g));
data = data.replace(user[0][0], '<nuxt-link to="/users/' + user[0][1] + '">@' + user[0][1] + '</>');
};
return data;
}
}
});有没有人有任何提示,我可以如何使这些工作作为适当的nuxt兼容链接?我已经尝试过使用<a>,它工作得很好,我只是希望使用适当的nuxt兼容链接。
发布于 2019-07-31 17:39:54
我认为这里的讨论基本上回答了以下问题:https://github.com/nuxt-community/modules/issues/185
概括起来,有两种选择:
https://stackoverflow.com/questions/57182057
复制相似问题