在Nativescript项目中使用Nativescript核心插件

在Nativescript项目中使用Nativescript核心插件,nativescript,angular2-nativescript,nativescript-angular,nativescript-plugin,Nativescript,Angular2 Nativescript,Nativescript Angular,Nativescript Plugin,我在我的Nativescript Angular应用程序中使用了Nativescript谷歌地图sdk插件,该插件非常有效 我的问题是,我想使用缓存的图像在自定义信息窗口中显示。为此,我在应用程序范围内使用nativescriptweb图像缓存plugin。当我在信息窗口中使用常规的标记时,它会抱怨它不是注册的组件: 未找到元素“WebImage”的模块“ui/web image” 在应用程序的其他地方,它都可以正常工作。在这方面,建议: InfoWindowTemplate内容被解析为Vani

我在我的Nativescript Angular应用程序中使用了
Nativescript谷歌地图sdk
插件,该插件非常有效

我的问题是,我想使用缓存的图像在自定义信息窗口中显示。为此,我在应用程序范围内使用
nativescriptweb图像缓存
plugin。当我在信息窗口中使用常规的
标记时,它会抱怨它不是注册的组件:

未找到元素“WebImage”的模块“ui/web image”

在应用程序的其他地方,它都可以正常工作。在这方面,建议:

InfoWindowTemplate内容被解析为Vanilla NativeScript XML,而不是Angular XML,因此无法找到您创建的自定义角度组件

所以问题是我怎样才能继续使用这个插件?有没有办法注册
组件,使其在自定义信息窗口中工作

为了确保没有其他问题,我将
nativescript web图像缓存
插件添加到普通的nativescript
nativescript谷歌地图sdk
演示项目中,然后
标记工作正常


非常感谢您的指点

由于InfoWindowTemplate内容被解析为Vanilla NativeScript XML,您可以向组件的根/父元素添加
xmlns:IC=“NativeScript web image cache”
。也可以使用
而不是
WebImage

作为InfoWindowTemplate内容被解析为Vanilla NativeScript XML,您可以将
xmlns:IC=“NativeScript web image cache”
添加到组件的根/父元素中。也可以使用
而不是
WebImage

  • 在Angular中注册的任何内容都以相同的方式不可用;因此,如果你必须创建一个核心模板;您还必须将
    xmlns:blah=“ns blah”
    作为核心模板的一部分传入,以便在该核心模板中正确注册。角度
    注册表项对Core没有任何作用。现在您可以轻松地执行
    ,然后它在模板中有效。但是,我建议您将
    xmlns:IC
    放在最上面的元素上;因为它使读取代码变得简单得多。但在项目周围没有父包装元素的情况下,这是在使用它的相同元素上注册它的有效代码

  • NS核心模板不同于NS角度模板;如果您试图使用像
    这样的角度工作的东西,
    [param]
    (param)
    将完全破坏核心的模板解析。NS Core的解析器类似于HTML,不应该在
    参数
    周围加任何东西,而
    应该加引号。
    可以使用
    {{boundvalue}}
    将动态值绑定到模板中

  • 通常在将NS核心模板传递到您需要的任何函数中时;你只想传递最小的部分;您很少需要使用
    或任何其他顶级元素。事实上,这可能会引起问题。您通常只需要将要查看的布局的一部分。所以在这种情况下

  • 最后在故障排除时使用Angular中的核心功能;我强烈建议您在每个元素上设置固定的宽度/高度和背景色。这有时可以告诉你失败的地方

  • 在Angular中注册的任何内容都以相同的方式不可用;因此,如果你必须创建一个核心模板;您还必须将
    xmlns:blah=“ns blah”
    作为核心模板的一部分传入,以便在该核心模板中正确注册。角度
    注册表项对Core没有任何作用。现在您可以轻松地执行
    ,然后它在模板中有效。但是,我建议您将
    xmlns:IC
    放在最上面的元素上;因为它使读取代码变得简单得多。但在项目周围没有父包装元素的情况下,这是在使用它的相同元素上注册它的有效代码

  • NS核心模板不同于NS角度模板;如果您试图使用像
    这样的角度工作的东西,
    [param]
    (param)
    将完全破坏核心的模板解析。NS Core的解析器类似于HTML,不应该在
    参数
    周围加任何东西,而
    应该加引号。
    可以使用
    {{boundvalue}}
    将动态值绑定到模板中

  • 通常在将NS核心模板传递到您需要的任何函数中时;你只想传递最小的部分;您很少需要使用
    或任何其他顶级元素。事实上,这可能会引起问题。您通常只需要将要查看的布局的一部分。所以在这种情况下

  • 最后在故障排除时使用Angular中的核心功能;我强烈建议您在每个元素上设置固定的宽度/高度和背景色。这有时可以告诉你失败的地方


  • 您是否尝试在根元素中传递
    xmlns:IC=“nativescript web image cache”
    ,而不是
    尝试
    ,至少这是在Vanilla nativescript中注册元素的方式,所以应该可以工作。@manoj实际上我尝试了添加页面元素并将xmlns添加到其中。它不再抱怨“找不到模块”,但也不会显示……你不应该添加
    页面
    ,它只能添加到
    框架
    ,而是使用布局。@Manoj你(和Nathan on slack)的确是对的。避免使用页面元素,我在括号中遇到了一个问题,但它仍然可以正常工作。谢谢!您是否尝试传递
    xmlns:IC=”