无法读取属性' FloatingActionButton'在NativeScript中使用插件nativescript-floatingactionbutton

时间:2018-03-31 15:58:11

标签: javascript android xml nativescript

我对NativeScript相当新,我需要显示一个FAB(我不使用角度)。我从一个空白项目开始,并从https://github.com/bradmartin/nativescript-floatingactionbutton安装了插件。然后在我的代码中添加了按钮的xml部分。然而,只需添加一行:

<FAB:fab class="fab-button" icon="res://ic_add_white" tap="{{ onTap }}" rippleColor="#f1f1f1"/>

我有以下错误:

&#34; main&#34;发生了未被捕获的异常。 thread.java.lang.RuntimeException:无法启动活动ComponentInfo {org.nativescript.MyApp2 / com.tns.NativeScriptActivity}:com.tns.NativeScriptException: 调用js方法onCreateView失败

TypeError:无法读取属性&#39; FloatingActionButton&#39;未定义的 文件:&#34; file:///data/data/org.nativescript.MyApp2/files/app/tns_modules/nativescript-floatingactionbutton/fab.js,line:20,column:57

此外,我确保图标图像位于正确的文件夹中。 这是应用程序的主要代码(它基本上是一个Helloworld程序)

主要-page.xml

<Page xmlns="http://schemas.nativescript.org/tns.xsd" xmlns:FAB="nativescript-floatingactionbutton" navigatingTo="onNavigatingTo" class="page">
<Page.actionBar>
    <ActionBar title="My Apps" icon="res://icon" class="action-bar">
    </ActionBar>
</Page.actionBar>
<StackLayout class="p-20">
    <Label text="Tap the button" class="h1 text-center"/>
    <Button text="TAP" tap="{{ onTap }}" class="btn btn-primary btn-active"/>
    <Label text="{{ message }}" class="h2 text-center" textWrap="true"/>
    <FAB:fab class="fab-button" icon="res://ic_add_white" tap="{{ onTap }}" rippleColor="#f1f1f1"/>
</StackLayout>

主要 - 视图 - model.js

var Observable = require("data/observable").Observable;

function getMessage(counter) {
    if (counter <= 0) {
       return "Hoorraaay! You unlocked the NativeScript clicker achievement!";
    } else {
       return counter + " taps left";
   }
}

function createViewModel() {
    var viewModel = new Observable();
    viewModel.counter = 42;
    viewModel.message = getMessage(viewModel.counter);
    viewModel.test = "foo";

    viewModel.onTap = function() {
        this.counter--;
        this.set("message", getMessage(this.counter));
    }

    return viewModel;
}

exports.createViewModel = createViewModel;

主要-page.js

var createViewModel = require("./main-view-model").createViewModel;

function onNavigatingTo(args) {
    var page = args.object;
    page.bindingContext = createViewModel();
}

exports.onNavigatingTo = onNavigatingTo;

此外,我使用的是3.4.3版本的NativeScript。在此先感谢您的宝贵帮助

0 个答案:

没有答案