使用vue.js和elixir的超薄模板条件语法

时间:2018-03-20 14:54:45

标签: vue.js elixir phoenix-framework slim-lang

如何将vuejs条件与vuejs变量和elixir变量结合使用?

<div v-if="vuevar || <%= @conn.assigns.elixirvar %>">

2 个答案:

答案 0 :(得分:2)

  

conn.assigns.elixirvar会返回true还是false

     

实际上是一个字符串。

如果是字符串,则应引用它:

<div v-if="vuevar || '<%= @conn.assigns.elixirvar %>'">

然而,它将被打印为标识符。

答案 1 :(得分:2)

虽然添加像@acdcjunior建议的引号可以在简单的情况下工作,但是当你的字符串本身包含引号或其他特殊字符时它会中断。正确的方法是使用JSON编码器对值进行编码,然后输出:

public class Action implements ActionListener{
    private GetSet get = new GetSet();  // **** added

    @Override
    public void actionPerformed(ActionEvent e) {

        // GetSet get = new GetSet();
        if(e.getSource().equals(saveProject)){
            try {
                CreateProject op = new CreateProject();
                loadProjectUrl = op.setProjectUrl();                    
                get.setLoadProjectUrl((String)loadProjectUrl);

                // ....
                }
            } catch (IOException ex) {
                Logger.getLogger(DoubleViewer.class.getName()).log(Level.SEVERE, null, ex);
            }
        };

        if(e.getSource().equals(ruler)){
            System.out.println("ruler button clicked");
            String a = get.getLoadProjectUrl();
            System.out.println(a);
        };
    }
}

现在可以使用布尔值,字符串,数字,数组,对象;基本上JSON都支持。