Vuejs2 如何将自定义组件渲染为贴图';什么是标记弹出?
我正在使用Vue插件组件,我想在地图插件的内容中显示一段时间以前的时间。下面是一个超级简化的示例来说明该用法:Vuejs2 如何将自定义组件渲染为贴图';什么是标记弹出?,vuejs2,vue-component,Vuejs2,Vue Component,我正在使用Vue插件组件,我想在地图插件的内容中显示一段时间以前的时间。下面是一个超级简化的示例来说明该用法: let popup = L.responsivePopup().setContent(` <h1>Hello world</h1> <p>A thing happened <Timeago datetime="${datetime}"></Timeago></p> `); L.marker([lat
let popup = L.responsivePopup().setContent(`
<h1>Hello world</h1>
<p>A thing happened <Timeago datetime="${datetime}"></Timeago></p>
`);
L.marker([lat, lon]).bindPopup(popup).addTo(this.map);
let popup=L.responsivePopup().setContent(`
你好,世界
发生了一件事
`);
L.marker([lat,lon]).bindpoop(popup).addTo(this.map);
根据和,我应该能够使用Vue.compile()
编译此文件,但我不理解这个概念
首先,没有解释什么是“完整构建”。我怎样才能知道我拥有的是一个“完整的构建”?搜索“vuejs完整构建”不会返回任何字面上被称为该短语的内容,即使他们在文档中使用了它。我所知道的是,当我试图调用Vue.compile()
并从“Vue”导入import Vue时,它抱怨说:
TypeError:vue\uuu网页包\u导入的\u模块\u 6\uuuu。default.compile不是函数
所以我不知道从那里走到哪里
然后第二件事是(假设第一件事得到排序),我是否必须让我的HTML包含一个带有特定id
的空div,等待它呈现,然后对其调用Vue.compile()
,因为那里的示例代码在元素id上运行.mount()
?因为这似乎有点“不正确”,似乎有一个额外的步骤。还是说这是让这个场景生效的唯一方法
如果有另一种更简单的等待方法,比如让Timeago
组件只返回渲染的字符串,比如2小时前
,我可以将其合并到字符串文字中,这对我也适用。任何一种方法都可以。Vue的包有不同的构建,full
意味着包可以编译模板并运行它。所有构建类型都可以在这里找到
compile允许您使用渲染函数,它允许您以编程方式操作DOM和创建元素。在这里您可以找到有关它的Vue文档
关于您面临的问题,您可以创建一个vue组件并将弹出窗口放在其中,渲染时该组件将渲染timeago组件
<template>
<h1>Hello world</h1>
<p>A thing happened <Timeago datetime="${datetime}"></Timeago></p>
</template>
import Timego from './Timeago.vue'
export default {
components: {
Timeago
},
props: {
datetime: String
}
}
你好,世界
发生了一件事
从“./Timeago.vue”导入Timego
导出默认值{
组成部分:{
很久以前
},
道具:{
日期时间:字符串
}
}
很抱歉,但我不明白这两种方法有何帮助。关于呈现函数的第一部分,它似乎是编写HTML的替代品,但它似乎不是“按需”获取呈现HTML的方法。在我的情况下,在用户点击时,我基本上创建了一个新的DOM元素“我自己”(通过传单),我只提供静态HTML来显示在弹出窗口中。因此,我不知道机制在哪里,我会告诉vue“运行”这个Timeago
组件,将“2019-09-02”转换为“今天”,并将整个结果返回给我。你知道的?