TypeError:无法分配给只读属性'_msgid'

时间:2016-05-10 10:08:08

标签: node-red

我正在尝试节点红...

enter image description here

我这样做网页查询https://api.forecast.io/forecast/

这是给定的输出:

        HtmlDocument doc = new HtmlDocument();
        string html = @"
            <img src='img1.jpg' />
            <img src='img1.jpg' etc='etcValue' />
            <img width='200px' src='img1.jpg' />
        ";
        doc.LoadHtml(html);

        var relevantImgNodes = doc.DocumentNode.SelectNodes("//img")
            .Where(n => 
                n.Attributes.Count == 2 && 
                !string.IsNullOrEmpty(n.GetAttributeValue("src")) && 
                !string.IsNullOrEmpty(n.GetAttributeValue("etc")));

        Console.WriteLine(relevantImgNodes.Count()); // prints 1

这似乎是正确的。

Parse Weather中的代码是

<LinearLayout
    android:id="@+id/linear1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:weightSum="9"
    android:orientation="horizontal" >

    <ImageView
        android:id="@+id/ring_oss"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="3"
        android:src="@drawable/ring_oss" />

    <ImageView
        android:id="@+id/maila_oss"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="3"
        android:src="@drawable/maila_oss" />
<EditText
        android:id="@+id/edittxt"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="3"
        android:src="@drawable/maila_oss" />
</LinearLayout>

我得到的错误是:

  

TypeError:无法分配给19.49的只读属性'_msgid'

价值似乎没问题。

我做错了什么?

提前致谢。

2 个答案:

答案 0 :(得分:4)

问题在于Parse Weather功能。您正在返回一个int(18.08),Function节点需要返回一个msg对象。

尝试这样的事情:

var weather = JSON.parse(msg.payload);
msg.payload = weather.currently.temperature;

return msg;

答案 1 :(得分:2)

发现虚假错误。

将功能代码更改为:

//parse forecast.io message

 var weather = JSON.parse(msg.payload);
 msg.payload = weather.currently.temperature;
 return msg;

现在按预期工作:)