Vue js和动态组件和内容

时间:2017-06-17 16:07:56

标签: javascript jquery ajax vue.js

我想在VueJS中为我的项目实现Modal窗口。 就像我在jQuery中一直做的那样:

  • 通过AJAX获取模态的HTML(HTML是动态的,后端制作它)
  • 将HTML代码附加到BODY

但VueJS有不同的逻辑,我真的不知道如何创建完全动态的模态窗口。

我可以创建模态窗口组件并将其附加到正文,但我不能将HTML(我从AJAX请求获得)放在组件内作为模板插槽

<slot></slot>. 

那我怎么能这样做?也许一些最好的做法?

由于

2 个答案:

答案 0 :(得分:0)

将模式元素设置为您希望HTML内容具有属性v-html="modalContent",然后在您的vue代码中打开该模式时发出Ajax请求并将生成的HTML存储到{{1} }

答案 1 :(得分:0)

我解决了。

我们需要将我们的模态组件放在&#34;#app&#34;内部需要html(从AJAX获取)并将该实例作为新vm启动。

创建包装器来管理它

string[] splitted = rawResponse.Split(new char[] { '\r', '\n' });
string aa = null;
if (splitted[splitted.Length-1].Contains("%"))
{
    aa = aa + splitted[splitted.Length-1];
}

string s = System.Uri.UnescapeDataString(aa);
Console.WriteLine(s);

当然hide方法可以破坏当前的模态窗口VM等等。

所以在那之后我们将拥有功能齐全的模态窗口,希望能帮助别人。