如何在节点js中的php中创建函数

时间:2018-08-13 06:31:41

标签: php html node.js ejs

实际上我已经使用了如下功能

function selectBloodGroupNames()
{
    return array("A+", "O+", "B+", "AB+", "A-", "O-", "B-", "AB-", "A1+Ve", 
    "Unknown");
}

以上函数返回的血型列表可以按照我们的想法进行格式化,就像显示在下拉列表中一样!

我已将该功能保存在一个名为functions.php的单独文件中

如何在express模块​​和ejs或基本html模板引擎中使用类似node.js的方法。

4 个答案:

答案 0 :(得分:2)

ejs 文件中具有访问数组的完整示例

data.js

 const sampleArray = {
     function1(){
     return ["A+", "O+", "B+", "AB+", "A-", "O-", "B-", "AB-", "A1+Ve", 
        "Unknown"];
      },
   function2() {
     return ["A+", "O+", "B+", "AB+", "A-", "O-", "B-", "AB-", "A1+Ve", 
        "Unknown"];
     }
    }
module.exports = sampleArray;

main.js //渲染ejs文件。

const  sampleArray = require('./data');
app.get('/renderEjs', function(req, res) {
  res.set('Content-Type', 'application/javascript');
  res.render('ejsHtmlFileName', { myArray :sampleArray.function1(),myArrayTwo:sampleArray.function2()});
});

ejsFile

<div><p><%= myArray %><%= myArrayTwo %></p></div>

ejs文件中的渲染数据的参考链接-LINK

答案 1 :(得分:1)

要在node.js中使用,您可以创建一个单独的文件common.js

 module.exports=function selectBloodGroupNames()
 {
    return ["A+", "O+", "B+", "AB+", "A-", "O-", "B-", "AB-", "A1+Ve", 
    "Unknown"];
 }

然后在您要使用的文件中将其包含并使用,如下所示:-

   const Common=require('pathto/common.js');
   let bloodGroupList= Common.selectBloodGroupNames();
   //now you can use it where ever you want 
   console.log(bloodGroupList);  

答案 2 :(得分:0)

您应该安装babel才能将ES6用于javascript

npm install --save-dev babel-core 然后创建单独的文件config.js。在config.js中:

export default Config {
  selectBloodGroupNames() {
     return ["A+", "O+", "B+", "AB+", "A-", "O-", "B-", "AB-", "A1+Ve", 
    "Unknown"];
  }
}

然后在您要使用功能的文件中

import Config from ./pathto/config.js;

function functionName () {
  var arr = Config.selectBloodGroupNames();
}

答案 3 :(得分:0)

最后,我自己找到了一个解决方案,并引用了 @IftekharDani 的答案

functions.js 该文件包含多个功能!

w

app.js 主渲染文件,我将带有变量的整个文件传递给ejs文件

my_loss

home.ejs 文件,其中包含函数的内容。

功能1

module.exports = {
    menuTop: function(){
        var data = '<li>'+
        '<a href="/login">Log in</a>'+
        '</li>'+
        '<li>'+
        '<a href="/register">Register</a>'+
        '</li>';
        return data;
    },

    workCheck: function(user){
        if(user === "OLD")
        {
            var data1 = '<h1>OLD user</h1>';
        }
        else
        {
            var data1 = '<h1>Unknown or new user</h1>';
        }
        return data1;
    }
};

功能2

var func = require('./functions');

app.get('/', function (req, res) {
    res.render('home', { funs : func});
});

最后我得到了预期的结果!我会将50%的功劳归给 @IftekharDani ,以便给我一个主意。谢谢!

相关问题