使用Meteor Useraccount包显示基于用户类型的表单字段

时间:2017-07-04 18:57:26

标签: javascript meteor meteor-blaze meteor-accounts meteor-useraccounts

有人可以帮我弄清楚如何解决这个问题吗?

以下是该方案: 假设有三种类型的用户,即学生教师,我希望使用useraccounts包保存在我的馆藏中

问题

在我的AccountsTemplates.addField({})中,我想以注册表单为学生显示 3个字段,为教师显示 4个字段>以及在type: hidden属性的帮助下,父级的5个字段取决于用户从以下三个选项中选择的位置。

我是谁?

<a href="/new-account/parent">Parent</a>

学生

教师

尝试解决方案

  1. 我尝试使用FlowRouter参数,并使用上述选项中用户提供的值,但建议将AccountTemplate放在/lib中,这样就可以了由客户端服务器访问,但问题是FlowRouter.getParam()在服务器端无效。
  2. 使用pub/subaccount-config.js我写了这个

    if(Meteor.isServer){ Meteor.publish('getParam', function(param){ console.log(param) })}else if(Meteor.isClient){ console.log(FlowRouter.getParam('user-type') }

  3. 并且在 routes.js

    FlowRouter.route('/new-account/:user-type', { 
        action(){
         Meteor.subscribe('getParam', FlowRouter.getParam('user-type');
          // because here  .getParam can be accessed.
     }
    }
    

    它在服务器端运行良好且反应灵敏,但在client侧,undefined

    感谢。

    此致

0 个答案:

没有答案