从子组件修改vue应用程序main.js中的值

时间:2019-06-01 19:20:27

标签: vuejs2

我需要从组件更新最初在vue应用程序的main.js中设置的值。我不确定最好的方法(或者即使可行)

我尝试直接从组件设置该值,但是它似乎没有更新。

我很高兴在应用启动时对其进行正确设置。我只需要设置一次,但是我希望它在应用启动时读取服务器/主机信息并填充值。

Vue.use(Adal, {
// This config gets passed along to Adal, so all settings available to adal can be used here.
  config: {
    // 'common' (multi-tenant gateway) or Azure AD Tenant ID
    tenant: 'xxxxxxxxxxxxxxxxxxxxxxxxx',

    // Application ID
    clientId: 'xxxxxxxxxxxxxxxxxxxxxxx',

    // Host URI
    redirectUri: 'http://localhost:8080',

    cacheLocation: 'localStorage'
  },

  // Set this to true for authentication on startup
  requireAuthOnInitialize: false,

  // Pass a vue-router object in to add route hooks with authentication and role checking
  router
});

我想根据用户用于连接到站点的URL动态创建redirectUri值。这是adal-vue库的一部分,可为我的应用程序处理AzureAD身份验证。

似乎此值仅设置一次,无法即时修改。有一种解决方法可以做到这一点?

1 个答案:

答案 0 :(得分:0)

我不知道您在Adal.install函数中做什么,我想您可以尝试声明一个option对象,该对象将传递给Vue.use(),然后可以在option,通过引用传递时,其值将在Adal ...

中更改
const option = {
  config: {
    redirectUri: 'http://localhost:8080',
}
Vue.use(Adal, option);

// then change it in somewhere
option.config.redirectUri = 'http://localhost:9000'