首页 文章

从动态接收的html内容初始化组件

提问于
浏览
0

我在Laravel应用程序中使用VueJS和gulp并进行浏览 .

我的vue组件可以正常使用普通的html或刀片文件 .

只有在我加载页面后尝试加载html时才会出现此问题 . (加载vue脚本后...)

例如:假设组件的签名是 <todo-list /> . 我正试图在一个模态中加载它 . 包含签名的html是从jQuery Ajax调用中加载的 . $.ajax() .

我所知道的事情:

  • 问题的原因很简单:由于页面已经加载,附加到body的vue脚本也被加载,因此它无法识别从dinamic html内容加载的组件签名 .

  • 我可以使用"onShow"模态事件 . 问题是我不知道 how to 调用VueJS再次检查所有html解析那些组件标签 .

1 回答

  • 1

    我无法用v-if或v-show指令解决这个问题 .

    要解决,我需要再次“编译”Vue应用程序,调用:

    var node = $('#ROOT_NODE_OF_COMPONENT').get(0);
    this.$compile(node);
    

    将远程HTML内容加载到DOM后运行此代码 .

    PS:VueJS v1.0

相关问题