Никто не упоминает подобное, но даже более простое решение, чем выше, без необходимости иметь дело с пакетом класса. Предполагая, что myfile.properties находится в пути к классам.
Properties properties = new Properties();
InputStream in = ClassLoader.getSystemResourceAsStream("myfile.properties");
properties.load(in);
in.close();
Наслаждайтесь
Я думаю, вам нужно использовать function
вместо функции стрелки, потому что с функциями стрелки, this
теряется.
с вычисленным function
сохраняет this
, ссылаясь на экземпляр компонента.
computed('attr1', 'attr2', function() {
return this.attr1 && this.attr2;
})
Вот фрагмент специально для ember-cli 3.4
import Controller from '@ember/controller';
import { computed } from '@ember/object';
export default Controller.extend({
appName: 'Ember sdfa',
attr1: 1,
attr2: 2,
attr3: 'foo',
attr4: 'bar',
attr5: 3,
attr6: 4,
totalPrice: computed('attr1', 'attr2',function() {
let a = this.attr1 ? this.attr1 : 0;
let b = this.attr2 ? this.attr2 : 0;
let total = a + b;
return total;
}),
});
. Это должно сработать для получения totalPrice
, вот тлеблер ember, с которым вы можете поиграть https: // ember- twiddle.com/8801e28a888b469b8057d67a63829808?openFiles=controllers.application.js%2C
Если вы хотите объединить строку вместе, она должна выглядеть следующим образом
fooBar: computed('attr3', 'attr4', function() {
let foo = this.attr3 ? this.attr3 : null;
let bar = this.attr4 ? this.attr4 : null;
return `${foo} ${bar}`
}),
, и результат будет be foo bar
Если вы хотите объединить число, пожалуйста, следуйте ниже
combinedNumber: computed('attr5', 'attr6', function() {
let a = this.attr5 ? this.attr5 : null;
let b = this.attr6 ? this.attr6 : null;
return `${a} ${b}`
}),
, вывод combineNumber
равен 3 4
Надеюсь, это поможет. [1114 ]
Приведенный ниже код должен работать нормально.
Если attr1
и attr2
- текст.
import { computed } from '@ember/object';
...
totalPrice: computed('attr1', 'attr2', function() {
return `${this.attr1} ${this.attr2}`;
})
attr1
и attr2
являются числами.
attr1: 1,
attr2: 2,
totalPrice: computed('attr1', 'attr2', function () {
return this.attr1 + this.attr2;
//(or)
return `${this.attr1 + this.attr2}`;
}),