2016-12-14 8 views
0

Привет Я попробовал обходной путь, предложенный командой Appcelerator (для работы с устаревания из ti.include в версии 6.0.0)Appcelerator обходной путь для ti.include не работает

function include(file) { 
    return eval(Ti.Filesystem.getFile(Ti.Filesystem.resourcesDirectory, file).read().text); 
} 

И я получаю ошибку , возможно, система не может прочитать файл. ошибка:

[ERROR]: TiBlob: java.io.FileNotFoundException: Ресурсы/подчеркивание-min.js

мне удалось перечислить файлы каталога через .getDirectoryListing() и не удалось найти файл, на самом деле я не смог найти там какой-либо файл .js.

Любые предложения?

ответ

2

Краткий ответ: не пытайтесь использовать обходной путь, но перенести свои приложения на правильную функциональность require. Метод Ti.include() был устаревшим с 3.3.0 (!) И был удален в 6.0.0 (3 основных версии позже). Все текущие и будущие приложения используют это поведение для масштабируемых высокопроизводительных приложений, и вы тоже должны.

Для вашего потребительной случае, это то, как вы будете использовать вашу библиотеку ныне:

var _ = require('underscore-min') 

Он ожидает, что ваш файл будет помещен в <project-root>/Resources/underscore-min.js (классических проектов) или <project-root>/app/lib/underscore-min.js (проекты Alloy).

Подробнее о require и как его использовать here и here.

Код сильный!

+0

Большое спасибо за разработанный ответ, который отлично поработал! –

+0

Привет, ребята, это не работает для меня, есть ли что-то еще, что я должен делать? https://www.evernote.com/l/ACRAvzocIJpNm4oXmTU0FdC5gA289bm6yVk –

+1

Прочтите ссылки, которые я приложил. Вам нужно экспортировать переменные и метод следующим образом: export.myMethod = function() {...}; –